6
將新的Toolbar
與appcompat支持庫一起使用時,在我看來主頁按鈕不像以前那樣工作,除非您設置了有效的選項菜單。一個簡單的和沼澤標準活動:如果沒有選項菜單,工具欄主頁按鈕不起作用
public class MyActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.some_page);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
ActionBar bar = getSupportActionBar();
bar.setHomeButtonEnabled(true);
bar.setDisplayHomeAsUpEnabled(true);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// getMenuInflater().inflate(R.menu.some_menu, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed() or finish() or whatever();
break;
}
return super.onOptionsItemSelected(item);
}
}
如果在onCreateOptionsMenu()
設置菜單,onOptionsItemSelected()
將被稱爲沒事用android.R.id.home
所有的罰款。但是,如果根本沒有onCreateOptionsMenu()
(或者它是空的,要麼返回true
要麼調用super
函數),則根本不會調用onOptionsItemSelected()
,因此沒有機會捕獲主頁按鈕上的單擊。我甚至試圖通過一個空菜單onCreateOptionsMenu()
,但它沒有幫助。
有沒有一種解決方法,可以讓我們在不需要功能選項菜單的頁面上擁有可用的主頁按鈕?
我找到了現在這個樣子,它滑落我的注意,在第一,因爲我*不*對JB但KK: http://stackoverflow.com/questions/26859841/homeasup-button-has-no-effect-in-android-4-2-2-with-appcompat-21-0-0?rq=1 –