У меня есть два Панели инструментов в моем приложении, и у меня есть два menu_main.xml
и menu_main2.xml
. Значок отображается правильно на обеих панелях инструментов, но действие на одной из панелей инструментов не работает. Как я могу это исправить?Android Toolbar Значок действия не работает
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Setup Toolbar
toolbar = (Toolbar) findViewById(R.id.tool_bar);
setSupportActionBar(toolbar);
toolbar2 = (Toolbar) findViewById(R.id.tool_bar2);
toolbar2.inflateMenu(R.menu.menu_main2);
Это мой onCreateOptions,
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
и onOptionsItemSelected.
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
web1 = (WebView) findViewById(R.id.web1);
web2 = (WebView) findViewById(R.id.web2);
web3 = (WebView) findViewById(R.id.web3);
Это действие работает, то из панели инструментов,
if (id == R.id.action_google) {
web1.setVisibility(View.GONE);
web2.setVisibility(View.GONE);
web3.setVisibility(View.VISIBLE);
}
Это из Toolbar2, который не работает ...
if (id == R.id.action_naver) {
web1.setVisibility(View.VISIBLE);
web2.setVisibility(View.GONE);
web3.setVisibility(View.GONE);
}
Можете ли вы использовать setOnMenuItemClickListener для каждой панели инструментов вместо onOptionsItemSelected? – heloisasim
@heloisasim Спасибо! Он работает отлично. – taeuk