Articles of android activity

有没有办法使用ActivityInstrumentationTestCase2添加附加到活动

我正在使用ActivityInstrumentationTestCase2进行unit testing。 是否有一种方法来添加额外的活动,所以当活动到这样的一条线 Bundle extras = getIntent().getExtras(); 它会返回额外的?

为什么单身人士class活下去?

我有一个Singleton类,与我的应用程序的一个活动一起使用。 当我退出活动 – 这使我回到菜单活动 – 然后重新打开活动,我发现,当我尝试访问单身,它仍然是相同的。 当然,它应该已经与活动一起销毁? 我在这里看到这个问题: 活着的单身人士,当活动结束但不能完全遵循他们的意思。 当我按下设备上的返回button(或使用“活动”本身内的完成)时,活动是否保持活动状态以供将来使用? 如果是这样,那就解释一下。

覆盖Android后退button

关于为什么我试图这样做的一些信息:我正在使用ActivityGroups从tabHost活动打开一个活动,并有新的活动留在选项卡下。 我有这个部分。 但是在这个新的活动中,如果我使用后退button,它会使我从标签页活动中跳出来,所以我必须点击几下才能返回到原来的位置。 有没有办法设置后退button去特定的活动,而不是杀死当前的活动窗口?

完成广播接收器的活动

我有一个活动,当手机铃声响起(电话应用程序)时,我显示为无模式。 当发生以下任一事件时,我想完成活动。 第一个是如果我触摸活动外的任何地方(这不是问题),第二个是如果振铃停止。 我正在侦听广播接收器中的IDLE_STATE,但是我不确定如何在看到它时调用活动的结束。 接收者没有被活动注册,而是被Manifest.xml注册

如何使用FLAG_REORDER_TO_FRONT和FLAG_CLEAR_TOP启动Activity

我的任务A,B,C,D有四项活动。 按顺序启动活动A-> B-> C-> D。 这里, 我想回到D的活动A并重新开始活动。 所以我使用了意向标志 i.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 活动B,C,D实例在stmt 1之后不再需要。 我去为国旗做到这一点, Intent.FLAG_ACTIVITY_CLEAR_TOP 在我的APPP使用上面的1和2我试图实现像 – 返回并恢复活力A,并从堆栈中移除其他活动 所以我试过了。 i.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //vise versa 使用上面的代码这两个标志都在这里使用这个引用 ( Android:意图的setFlags和addFlags之间有什么区别 ) 我不能够完成这些任务(恢复活动A并清除其他)。 实际的呼叫scheme是 when i use the CLEAR flag the call is like D->oncreate(A) and clear BCD when i use the REORDER flag the call is like D->onrestart(A). 那么我怎么能结合这个标志来获得组合的行动恢复A和清除其他或有任何其他方式来做到这一点。 这是我的清单 <manifest […]

如何从Activity调用另一个Activity中的方法

正在开发一个我有的Android应用程序 我有两个classA和Bclass。 在A类中,我尝试了下面的代码段, 如何从Activity调用另一个Activity中的方法。 public class FirstActivity extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main2); } public void method() { // some code } } public class SecondActivity extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main2); FirstActivity fact = new FIrstActivity(); fact.method(); } }

以编程方式禁用和启用Android中活动的方向更改

我有一个应用程序,使一些后台人员。 当后台工作正在运行一个进度的时候,如果设备在这段时间内被旋转了,那么活动就会“重置”,我想避免这种情况。 出于这个原因,我决定在这个过程中禁用定位。 我已经看到这个问题differends线程,但没有一个有效的解决scheme,至less在我的情况。 发布的解决scheme是关于修复活动方向,但是如果您使用以下操作,则必须处理REVERSE方向未返回的事实: getResources().getConfiguration().orientation 上面的函数返回SCREEN_ORIENTATION_PORTRAIT对于PORTRAIT和REVERSE_PORTRAIT情况(至less在我的testing中)。 所以最后我用旋转值来处理,所以我的代码“禁用旋转”是: int rotation = getWindowManager().getDefaultDisplay().getRotation(); switch(rotation) { case Surface.ROTATION_180: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT); break; case Surface.ROTATION_270: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE); break; case Surface.ROTATION_0: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); break; case Surface.ROTATION_90: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); break; } 再次允许方向: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED); 这在Android 4.1.2的设备中是完美的,但是在Android 4.2.1的设备中,它并不像预期的那样工作。 我想在活动周期中pipe理轮换应该是一个常见问题,但是我一直没有find合适的解决scheme。 可能是我正在寻找错误的方向,所以任何帮助真的很受欢迎。 在此先感谢,伊万。

从后台线程完成android活动是否安全?

在Android中,从后台线程调用Activity.finish()是否安全,还是只能从主线程调用? 这个文档没有提到关于这个方法的线程安全性。

屏幕旋转后,Android listview消失

在我的布局,我有一些button做出一些select,然后一个button来执行查询到数据库。 此查询的结果显示在此布局的ListView 。 问题是,如果我执行查询后旋转屏幕, ListView消失,必须再次执行查询。 我相信这是因为活动重新开始。 按照这里的build议,我已经添加到我的活动清单android:configChanges="orientation|keyboardHidden"并在我的代码中添加: @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); setContentView(R.layout.mylayout); } 但是这不起作用。 以下是我的活动的完整代码: public class MyClass extends ListActivity implements OnClickListener, OnCheckedChangeListener { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.mylayout); // Creates the buttons and setOnClickListener and setOnCheckedChangeListener } @Override public void onClick(View v) { […]

在手机上的两个启动器活动,一个在平板电脑上

我正在为Android 4.0+创build一个应用程序,并且我想实现这种行为。 当用户的设备是手机时,两个不同的活动将具有两个启动器图标,并且在平板设备上将只有一个(活动将包括片段,我将在一个主要活动中显示为选项卡)。 我知道可以在清单中设置多个启动器活动,但是我认为也许我需要一些能够在运行时(在java代码中)确定这个操作的东西。