我有一个应用程序,我首先显示一个设置屏幕,用户可以保存一些细节,我想在用户单击工具栏中的向上按钮时启动主要活动,但是当前单击向上按钮时,应用程序才会关闭。 / p>
这是我的清单
<activity
android:name="com.xyz.activity.MainActivity"
android:label="@string/title_activity_welcome"
android:launchMode="standard"
android:theme="@style/MyMaterialTheme" />
<activity
android:name="com.xyz.activity.IntroActivity"
android:theme="@style/MyMaterialTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.xyz.activity.SetLocationActivity"
android:parentActivityName="com.xyz.activity.MainActivity">
<!-- Parent activity meta-data to support 4.0 and lower -->
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.xyz.activity.MainActivity" />
</activity>
并且
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// Respond to the action bar's Up/Home button
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
任何帮助
答案 0 :(得分:1)
如下所示指定android:parentActivityName
属性和<meta-data.../>
:
<activity
android:name=".activity.EditProfileActivity"
android:label="@string/title_activity_edit_profile"
android:parentActivityName=".activity.ProfileActivity"
android:theme="@style/AppTheme.NoActionBar">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.via.android.activity.ProfileActivity" />
</activity>
你只需要设置
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
onCreate()
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
...
}
其余部分由Android Framework处理。
从您的代码中删除以下内容:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// Respond to the action bar's Up/Home button
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
答案 1 :(得分:0)
这就是我最终要做的事情(如果有人觉得有帮助的话)
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// Respond to the action bar's Up/Home button
case android.R.id.home:
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
return true;
}
return super.onOptionsItemSelected(item);
}