我正在尝试将返回选项从一项 Activity 设置为另一项 Activity
- Activity CategoryRegister 有父 Register Activity 。
- Activity Register 有父 LoginActivity
当我从上面的枯萎返回时,我回到登录注册,而对于类别注册 Activity ,我应该回到注册 Activity 。
list 文件的一部分:
<activity
android:label="Login Account"
android:name=".LoginActivity"></activity>
<activity
android:label="Register New Account"
android:parentActivityName=".LoginActivity"
android:name=".RegisterActivity"></activity>
<activity
android:label="Select Category"
android:parentActivityName=".RegisterActivity"
android:name=".CategoryRegister"></activity>
设置返回导航的过程:
getActionBar().setDisplayHomeAsUpEnabled(true);
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_register:
return true;
break;
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
default:
return true;
}
提前致谢。我真的不明白这种行为。有人遇到过类似的问题吗?
使用上面的 list 它适用于 parent->child ,但在 parent->child1->child2 的情况下(child2 up 按钮返回父级,但不是 child1 ,它是 child2 的父级,如 android list 中所述。
最佳答案
您使用的安卓版本是多少?如果您使用的是 2.1 或更低版本,则需要元标记以实现向后兼容性。例如
<activity
android:name="someActivity"
android:label="someLabel"
android:parentActivityName="theParent">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="theParent" />
</activity>
编辑:如果不是这种情况,请查看此 http://developer.android.com/design/patterns/navigation.html
关于Android:在 list 中设置导航需要根父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21688651/