我尝试了我最好的水平,但我无法找到它。我正在导航抽屉活动中工作,当我点击它时,我可以在右上方看到一个溢出图标,当我点击它时会弹出一个设置按钮(设置按钮)没有任何反应
我不知道如何为此配置XML,以便在点击时可以打开新的激活
我知道创建一个xml并且还为该按钮指定一个onClickListner但我无法继续进行,因为当按下该按钮(溢出图标中的“设置”按钮)时,我无法在何处调用设置激活
答案 0 :(得分:3)
试试这个 -
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.action_settings) {
Intent intent = new Intent(this, YourSettingfActivity.class);
startActivity(intent);
}
return super.onOptionsItemSelected(item);
}
menu_main.xml -
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
</menu>
答案 1 :(得分:2)
你可以在活动中使用以下方法找到这些方法,你可以在这里夸大菜单并希望你想要
菜单xml文件
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
>
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
<item android:id="@+id/action_search"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
<item android:id="@+id/action_logout"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
</menu>
您必须在活动中编写如下代码
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_settings:
Toast.makeText(this, "Settings", Toast.LENGTH_SHORT).show();
return true;
case R.id.item2:
Toast.makeText(this, "Search", Toast.LENGTH_SHORT).show();
return true;
case R.id.action_search:
Toast.makeText(this, "Logout", Toast.LENGTH_SHORT).show();
return true;
default:
return super.onOptionsItemSelected(item);
}
}