我有一个有两个活动的应用。 第一个提供了一个按钮,打开第二个。
这是第一个的最明确的定义:
<activity
android:name="com.example.buttonexample.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
第二项活动:
<activity
android:name="com.example.buttonexample.MainActivity2"
android:label="@string/title_activity_main_activity2" android:theme="@android:style/Theme.Translucent">
</activity>
以下是我如何启动第二个活动(通过OnClickListener获取第一个活动上的按钮):
public void startSecondActivityClick(View v) {
Intent startActivity2 = new Intent(this, MainActivity2.class);
startActivity(startActivity2);
}
这很好用,但是当我通过点击主页和应用程序的前景来设置应用程序时。我注意到第一个活动是不断创造/摧毁自己。我通过在onDestory方法中添加一些代码来增加静态int:
来验证这一点private static int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
count++;
}
protected void onDestroy() {
super.onDestroy();
Log.i("MainActivity", String.format("Destroyed, %d", count));
}
我也注意到删除半透明主题似乎解决了这个问题。我的问题是有没有办法半透明或类似的东西,但也没有重新启动?而且,我很好奇为什么会发生这种情况。我正在用星系SIII上的4.0.1 ICS测试这个。
答案 0 :(得分:0)
在经过一番挖掘后,我能够弄清楚为什么会这样。有人打开了其中一个开发者选项,“不要保留活动。”关闭此功能后,此操作停止了。我怀疑这种情况不会经常发生在生产中,因为大多数人可能没有这样的设置。你可以在设置下找到它 - &gt;大多数手机上的“开发者选项”。