设置为始终显示的Android菜单项未显示
在Android中使用菜单项的设置为始终显示的Android菜单项未显示,android,drop-down-menu,menu,android-actionbar,Android,Drop Down Menu,Menu,Android Actionbar,在Android中使用菜单项的app:showAsAction=“always”不会在操作栏中显示菜单项。相反,该项与具有app:showAsAction=“never”的菜单项一起显示在下拉列表中。代码如下: 菜单\u main.xml <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tool
app:showAsAction=“always”
不会在操作栏中显示菜单项。相反,该项与具有app:showAsAction=“never”
的菜单项一起显示在下拉列表中。代码如下:
菜单\u main.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="myAppID.MainActivity" >
<item android:id="@+id/action_one"
android:title="One"
app:showAsAction="always" />
<item android:id="@+id/action_two"
android:title="Two"
app:showAsAction="never" />
<item android:id="@+id/action_three"
android:title="Three"
app:showAsAction="never" />
</menu>
其他信息:我没有使用AppCompat
。我注意到当使用AppCompat
时,菜单项的行为是正确的
如果没有AppCompat,我如何修复此问题?而不是app:showAsAction将其更改为android:showAsAction,如图所示:
<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="myAppID.MainActivity" >
<item android:id="@+id/action_one"
android:title="One"
android:icon="@drawable/your_icon"
android:showAsAction="always" />
<item android:id="@+id/action_two"
android:title="Two"
android:showAsAction="never" />
<item android:id="@+id/action_three"
android:title="Three"
android:showAsAction="never" />
</menu>
希望它能工作。将其改为android:showAsAction,而不是app:showAsAction,如图所示:
<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="myAppID.MainActivity" >
<item android:id="@+id/action_one"
android:title="One"
android:icon="@drawable/your_icon"
android:showAsAction="always" />
<item android:id="@+id/action_two"
android:title="Two"
android:showAsAction="never" />
<item android:id="@+id/action_three"
android:title="Three"
android:showAsAction="never" />
</menu>
希望它能起作用。你可以用这个方法
@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();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
你可以用这个方法
@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();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
您还需要一个图标。添加一个图标或设置app:showAsAction=“always | withText”
@MohammadOmidvar不工作,@SusmitAgrawal不工作。您还需要一个图标。添加一个图标或设置app:showAsAction=“always | withText”
@MohammadOmidvar不工作,@SusmitAgrawal不起作用。此答案与问题的关系如何?此答案与问题的关系如何?不幸的是,添加图标没有帮助。我已更新了问题。添加图标仍然不会在操作栏中显示菜单项。@Kamil而不是app:showAsAction使用android:showAsAction和tryYes这是有效的!我还需要在app-level build.gradle中添加implementation'com.android.support:appcompat-v7:27.1.1'
。请更新您的答案,以便我可以接受。不幸的是,添加图标没有帮助。我已更新了问题。添加图标仍然不会在操作栏中显示菜单项。@Kamil而不是app:showAsAction使用android:showAsAction和tryYes这是有效的!我还需要在app-level build.gradle中添加implementation'com.android.support:appcompat-v7:27.1.1'
。请更新您的答案,以便我可以接受。