按应用程序的图标不会更改活动,但我希望它返回应用程序的MainActivity
。
通过执行以下操作,我已将应用程序的图标显示在操作栏的左侧:
ActionBar actionBar = getActionBar();
actionBar.setHomeButtonEnabled(true);
actionBar.setDisplayShowHomeEnabled(true);
我假设我应该在相关活动的onOptionsItemSelected()
方法中定义一些功能。当按下应用程序的图标并调用onOptionsItemSelected()
时,我已经获得了MenuItem ID的日志,但显然我无法将该id硬编码到switch语句中。我该怎么办?
答案 0 :(得分:1)
您应该在清单文件中为您的活动设置android:parentActivityName
。
android:parentActivityName="com.example.myfirstapp.MainActivity"
您还需要处理onOptionsItemSelected
中的点击,以获取android.R.id.home
的ID:
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);
}
有关Android developer website的更多信息,请参阅
答案 1 :(得分:0)
我就是这样做的
public boolean onOptionsItemSelected(MenuItem item) {
if(item.getItemId() == R.id.HomeButtonId){
//Return Home
}
}