0
我在我的ActionBar中有一个ShareActionProvider,并且我已经按照google的示例对它进行了发球。我很好奇为什么它不可点击?ShareActionProvider无法点击?
编辑:我知道,如果我删除shareHistory功能它变得可点击,但我不想保持共享历史记录。
XML:
<item
android:id="@+id/menu_item_share"
android:actionProviderClass="android.widget.ShareActionProvider"
android:icon="@android:drawable/ic_menu_share"
android:showAsAction="ifRoom"
android:title="Share" />
Java代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_legislation, menu);
MenuItem item = (MenuItem)menu.findItem(R.id.menu_item_share);
sharingIntent = new Intent(Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(Intent.ACTION_ALL_APPS, "http://www.anilinkz.com/");
mSharedActionProvider = (ShareActionProvider)item.getActionProvider();
setShareIntent(sharingIntent);
return true;
}
public void setShareIntent(Intent shareIntent) {
if (mSharedActionProvider != null) {
mSharedActionProvider.setShareIntent(shareIntent);
mSharedActionProvider.setShareHistoryFileName(null);
}
}
'ACTION_ALL_APPS'是'Intent'行动。它不是一个额外的关键,“ACTION_ALL_APPS”不是“ACTION_SEND”协议的一部分。除此之外,或许您正在测试的设备或模拟器没有任何支持“text/plain”的“ACTION_SEND”的东西,尽管这很不寻常。 – CommonsWare
我正在测试一个星系s4。我做ACTION_ALL_APPS的唯一原因是安抚facebook,因为他们不允许EXTRA_TEXT。它也不适用于EXTRA_TEXT。 – cj1098