您的位置:首页 > 产品设计 > UI/UE

MenuItemCompat.getActionProvider 返回实例为空的解决

2016-06-18 18:01 387 查看
要做一个分享的小功能,用到 ShareActionProvider

ShareActionProvider mShareActionProvider = (ShareActionProvider)MenuItemCompat.getActionProvider(shareItem);


这一行代码得到的实例死活就是个空,查了好多资料终于解决。

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:myapp="http://schemas.android.com/apk/res-auto">

<item
android:id="@+id/action_share"
android:title="@string/action_share"
myapp:showAsAction="always"
myapp:actionProviderClass="android.support.v7.widget.ShareActionProvider"/>
</menu>


在xml文件中修改,注意三个 myapp 的位置,原本都是 android。

改成这样之后就可以了。

具体原因没弄清楚,应该跟 v7 包的兼容性有关。

v4、v7、v13 这几个包,已经踩了很多坑了,唉。。。。

相似问题 stackoverflow 地址:http://stackoverflow.com/questions/19358510/why-menuitemcompat-getactionprovider-returns-null
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android menu v7