我在我的应用中使用导航抽屉,从右到左设置。我希望它只在我按下选项菜单按钮时打开(3个点)。
我试过这个帖子
Open navigation drawer when options menu button is pressed
但没有工作。
menu.xml文件
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item
android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
app:showAsAction="never" />
</menu>
答案 0 :(得分:1)
当你按下3点时,android会显示折叠的菜单项。 如果你想从菜单项打开抽屉,我建议你找一个代表3个点的图标(或保持抽屉像图标)和:
菜单:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/ic_options"
android:icon="@drawable/ic_menu_dots"
android:showAsAction="always" />
</menu>
代码
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.ic_options:
mDrawerLayout.openDrawer(your view);
return true;
}
return super.onOptionsItemSelected(item);
}
答案 1 :(得分:0)
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_settings:
mDrawerLayout.openDrawer(your view);
return true;
}
return super.onOptionsItemSelected(item);
}
您需要在菜单上添加showAsAction = ifRoom和图标:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item
android:id="@+id/action_settings"
android:title="@string/action_settings"
android:icon="@drawable/action_settings"
android:orderInCategory="100"
app:showAsAction="ifRoom" />
</menu>