我尝试在操作栏上添加共享按钮,但构建失败,原因是:
Error:(21) No resource identifier found for attribute 'actionProviderClass' in package '...'
我的menu / detail.xml包含:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item1.../>
<item2.../>
<item android:id="@+id/action_share"
android:icon="@android:drawable/ic_menu_share"
android:title="@string/action_share"
android:showAsAction="always"
app:actionProviderClass="android.support.v7.widget.ShareActionProvider"/>
</menu>
(这可能是无关紧要的,但是说明要使android:showAsAction成为app:showAsAction但是得到了下划线并且它表示&#34;当不使用appcompat库时应该使用android:showAsAction&#34;)
谢谢!
答案 0 :(得分:3)
更改
xmlns:app="schemas.android.com/apk/res-auto";
到
xmlns:app="schemas.android.com/apk/res/com.exapmle.mypackage";
其中com.exapmle.mypackage
将是您的包裹名称。
答案 1 :(得分:0)
编辑: 还 - -
android:showAsAction="always"
应改为:
app:showAsAction="always"
在DetailActivity.java中,您是否记得添加:
import android.support.v7.widget.ShareActionProvider;
我在下面,它完全一样,虽然我确实经历过你在这里描述的同样的事情。我不小心把:
xmlns:android="http://schemas.android.com/apk/res-auto
而不是:
<?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_share"
android:title="@string/action_share"
app:showAsAction="always"
app:actionProviderClass="android.support.v7.widget.ShareActionProvider" />
</menu>