如何处理向上导航,就像处理返回导航一样?
是否有类似于返回导航(onBackPressed()
)的向上导航方法?
或者当我按向上导航时,我可以编程使用 finish()
方法吗?
如何处理向上导航,就像处理返回导航一样?
是否有类似于返回导航(onBackPressed()
)的向上导航方法?
或者当我按向上导航时,我可以编程使用 finish()
方法吗?
onOptionsItemSelected()
并处理它,代码如下:@Override
public boolean onOptionsItemSelected(MenuItem item) {
// 'home' is the id for the icon click in the action bar (i.e. up/back).
if (item.getItemId() == android.R.id.home) {
// do your thing and return true
return true;
}
return super.onOptionsItemSelected(item);
}
onOptionsItemSelected()
方法。在您的Activity
中使用onBackPressed()
和finish()
方法(不太有效)。
使用setDisplayHomeAsUpEnabled()
方法。
setDisplayHomeAsUpEnabled()
方法?onCreate
方法中添加以下代码:@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_details);
// use getActionBar() if API is higher than 11
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
...
}
<application ... >
...
<!-- The main/home activity (it has no parent activity) -->
<activity
android:name="com.example.myfirstapp.MainActivity" ...>
...
</activity>
<!-- A child of the main activity -->
<activity
android:name="com.example.myfirstapp.DisplayMessageActivity"
android:label="@string/title_activity_display_message"
android:parentActivityName="com.example.myfirstapp.MainActivity" >
<!-- Parent activity meta-data to support 4.0 and lower -->
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.myfirstapp.MainActivity" />
</activity>
</application>
setDisplayHomeAsUpEnabled()
启用了“向上”按钮,你的工作就完成了,操作栏会正确地导航到上一级。getSupportParentActivityIntent()
和 onCreateSupportNavigateUpTaskStack()
。