gpt4 book ai didi

android - MenuItemCompat 类型未定义 getActionProvider?

转载 作者:行者123 更新时间:2023-11-29 14:38:50 27 4
gpt4 key购买 nike

我正尝试按照此处的指南将共享提供程序添加到我的操作栏: http://developer.android.com/guide/topics/ui/actionbar.html#ShareActionProvider

但是,当尝试按照我的 onCreateOptionsMenu() 中的说明添加以下内容时

// Set up ShareActionProvider's default share intent
MenuItem shareItem = menu.findItem(R.id.action_share);
mShareActionProvider = (ShareActionProvider)
MenuItemCompat.getActionProvider(shareItem);
mShareActionProvider.setShareIntent(getDefaultIntent());

有一个错误说 getActionProvider 是类型 MenuItemCompat 的未定义,尽管它被记录在案: http://developer.android.com/reference/android/support/v4/view/MenuItemCompat.html#getActionProvider(android.view.MenuItem)

有什么想法吗?

谢谢!

最佳答案

在看不到 XML 的情况下,在菜单布局中定义 actionProviderClass:

<item android:id=...
...
yourapp:actionProviderClass="android.support.v7.widget.ShareActionProvider"/>

并获取对 ShareActionProvider 的引用

ShareActionProvider shareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(menuItem);

请记住,documentation使用支持库中的示例。如果是这种情况,那么在您的菜单布局中:

<item android:id=...
...
yourapp:actionProviderClass="android.widget.ShareActionProvider"/>

并获取对 ShareActionProvider 的引用:

ShareActionProvider shareActionProvider = (ShareActionProvider) menuItem.getActionProvider();

关于android - MenuItemCompat 类型未定义 getActionProvider?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19375859/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com