我有一個活動,有一個ListView作爲主要活動。當列表中的其中一個項目被選中時,它將啓動一個新的活動,顯示所選項目列表中項目的詳細信息。該代碼運行正常,相關詳情如下:MainActivity在新活動開始時銷燬?
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.d("test","test");
ListView listView=(ListView) findViewById(R.id.name_list);
ListAdapter adapter=new SimpleAdapter(this,contactList,
R.layout.list_item,new String[]{TAGS[2]},new int[]{R.id.list_name_display});
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id){
Intent intent=new Intent(MainActivity.this,SingleContactActivity.class);
intent.putExtra(EXTRA_CONTACT_POSITION,position);
startActivity(intent);
}
});
}
新創建的活動有主要的活動,因爲它的母公司,所以當我做了看着它,我按下了按鈕操作欄上返回到列表視圖。然而,Log.d(...)
行告訴我,每次我去詳細的信息活動,然後返回到主要活動,主要活動被重新創建。
我不想要這個和我讀這個的方式:https://developer.android.com/training/basics/activity-lifecycle/stopping.html是主要活動應該停止當新的啓動,然後開始,然後恢復上按鈕按下。有人知道我的主要活動被破壞的原因嗎?
感謝您的幫助
編輯: 清單文件
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SingleContactActivity"
android:label="@string/title_activity_single_contact"
android:parentActivityName=".MainActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.jefe.jefecontacts.MainActivity" />
</activity>
</application>
你是如何在AndroidManifest中聲明你的主要活動的?你使用的是android:launchMode =「singleTop」 –
@ | - |我只是把文件。我剛剛離開了Android Studio – user50210
的默認值。不幸的是,一次只有一個活動可以活着。改用碎片。 – jyoon