您的位置:首页 > 其它

解决ActionBar中不显示item的问题,item显示在overflow中

2016-06-19 19:11 302 查看


解决ActionBar中不显示item的问题,item显示在overflow中

一、问题描述
      使用ActionBar时,需要增加一个菜单选项,即在/menu/main.xml的布局文件中添加item项,但却显示在overflow中,而不是在ActionBar中直接显示。main布局文件是这么写的:
<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="cn.irains.parkinglay_by.app.ParkInsideActivity" >
<item android:id="@+id/connect_status"
android:showAsAction="always"
android:orderInCategory="1"
android:icon="@drawable/status"
android:title="@string/connect_status"
/>
<item android:id="@+id/action_settings"
android:title="@string/see_charge"
android:orderInCategory="100"
app:showAsAction="never" />
</menu>
     这是由于:Action
Bar not displaying Action Items (All in overflow) Android (←点击链接)。即若我们 MainActivity继承了ActionBarActivity(MainActivity extends ActionBarActivity),这时所有的Item都默认压缩到overflow中,这时在xml文件里,应该把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="cn.irains.parkinglay_by.app.ParkInsideActivity" >
<item android:id="@+id/connect_status"
app:showAsAction="always"
android:orderInCategory="1"
android:icon="@drawable/status"
android:title="@string/connect_status"
/>
<item android:id="@+id/action_settings"
android:title="@string/see_charge"
android:orderInCategory="100"
app:showAsAction="never" />
</menu>
    这种方法可以解决部分问题,但有时还是不能转跳View,不能显示图标的信息,鄙人建议是:XML文件还是不变:android:showAsAction="always"。直接把改变继承的关系。即把原来 MainActivity继承了ActionBarActivity改为MainActivity继承
Activity,这时问题就解决了。
尊重原创,转载请注明出处】http://blog.csdn.net/guyuealian/article/details/51713494
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: