0
我使用的是菜單的動作條,這裏是在菜單下我的XML mainactivity.xml:動作條菜單按鈕無法瀏覽其他活動(安卓)
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id = "@+id/Viewmain"
android:orderInCategory="200"
app:showAsAction="always"
android:title="VIEW"/>
<item
android:id = "@+id/Addmain"
android:orderInCategory="205"
app:showAsAction="always"
android:title="ADD"/>
</menu>
下面是我使用的代碼導航在動作條的按鈕等活動mainactivity.java:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public boolean onContextItemSelected (MenuItem item)
{
if (item.getItemId()==200)
{
Intent myintent = new Intent(this, ViewStats.class);
startActivity(myintent);
return true;
}
else if (item.getItemId()==205)
{
Intent myaddintent = new Intent(this,Sales.class);
startActivity(myaddintent);
}
return super.onOptionsItemSelected(item);
}
public boolean onCreateOptionsMenu(Menu menu)
{
super.onCreateOptionsMenu(menu);
this.myMenu = menu;
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
然而,當我點擊動作條按鈕「VIEW」 &「ADD」,沒有發生變化。我的代碼有什麼問題?請幫忙。 (注:沒有錯誤被顯示在堆棧跟蹤)
'onContextItemSelected'或它應該是'onOptionsItemSelected'。同時刪除'else'語句,只保留'if',並確保內部'return true;'因爲編譯器會轉到'super'執行。 – Yupi
您是否使用調試器來查看執行是否達到您的if語句? –
@PeriHartman是的,我認爲它從來沒有達到這個聲明,因爲調試器上沒有顯示任何東西 – Shells