Android OptionsMenu 那点事


昨天因为OptionMenu的显示问题,纠结了一段时间。。 那么做个记录。

在使用到了AppCompat包的时候,Android 推荐使用app:showAsAction= "xx",xx 为showAsAction的五种属性(ifRoom,withText,always,never,colapseActionView)之一,当然使用了除android之外的命名空间,都需要在顶部标签中申明,如:

xmlns:app="http://schemas.android.com/apk/res-auto"
,然后menu看起来是这样

<?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">
    <item android:id="@+id/action_connect" android:title="@string/connect" app:showAsAction="ifRoom"/>
    <item android:id="@+id/action_disconnect" android:title="@string/disconnect" app:showAsAction="ifRoom" />
    <item android:id="@+id/action_clear" android:title="@string/clear" app:showAsAction="ifRoom" />
</menu>
好吧,进入正题。

但是当你没有使用AppCompat包的时候,换句话说,你没有使用AppCompat包的属性作为当前Application(Activity)的Theme属性的时候,如果使用了app 这样的命名空间,那么很可能你的app看起来是这样的



这样老土的menu样式 体验真的是非常差。

经过一番试验,得到了改善的方法,那就是将

app:showAsAction="ifRoom"
改成

android:showAsAction="ifRoom"
然后就得到了想要的结果


多做试验,多做总结,多做记录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值