我正在使用MainActivity来扩展Activity类。项目使用最小API为11.当我对菜单项进行膨胀时,它总是以溢出显示。
public class MainActivity extends Activity {
....
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the Menu Items
getMenuInflater().inflate(R.menu.menu_main,menu);
return true;
}
<?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"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item android:id="@+id/attach"
android:title="Attachment"
android:orderInCategory="1"
app:showAsAction="always"/>
</menu>
Styles.xml
<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Holo.Light">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
答案 0 :(得分:2)
你的MainActivity扩展了Activity而不是AppcompatActivity,你使用的是android:Theme.Holo.Light原生主题所以,你可以直接替换
应用程式:showAsAction =&#34;总是&#34;用android:showAsAction =&#34;总是&#34;
并试试,比如
<?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"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item android:id="@+id/attach"
android:title="Attachment"
android:orderInCategory="1"
android:showAsAction="always"/>
</menu>
答案 1 :(得分:0)
将其设置为showAsAction =&#34;始终&#34;
答案 2 :(得分:0)
试试这段代码,
以溢出显示:
yourapp:showAsAction="always"
显示下溢
yourapp:showAsAction="never"
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:yourapp="http://schemas.android.com/apk/res-auto">
<!-- Search, should appear as action button -->
<item
android:id="@+id/attach"
android:icon="@drawable/ic_action_hardware_keyboard_arrow_left"
android:title="Attachment"
android:orderInCategory="1"
yourapp:showAsAction="ifRoom" />
</menu>