さて、これはかなり具体的なものです。私の ShareActionProvider はフォーラムの投稿で使用されています。それは機能します(面倒なFacebookは別として、それはよく知られている問題であることを理解しています)。しかし、ポップアップ メニューから共有オプションを選択すると、2 つのリストが上下に表示されます。
リストが 1 つだけ表示されるように修正するにはどうすればよいですか?
編集:この問題を参照して、SOには少なくとも2つの他の質問があります:
PopupMenu で ShareActionProvider を使用していますが、2 つの PopupMenu を表示していますか?</a>
PopupMenu から ShareActionProvider を呼び出す
ここに私のコードがあります: xml のメニュー項目
<item
android:id="@+id/menu_community_overflow_share"
android:title="@string/menu_share"
app:actionProviderClass="android.support.v7.widget.ShareActionProvider"
android:orderInCategory="1"
app:showAsAction="never" />
ジャワ
private void share(MenuItem item) {
mShareActionProvider = (ShareActionProvider)MenuItemCompat.getActionProvider(item);
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Here's a message originally posted by " + mClickedMessage.getFirstName()
+ " " + mClickedMessage.getLastName() + ": " + mClickedMessage.getTheMessage() + "\n\n");
sendIntent.setType("text/plain");
setShareIntent(sendIntent);
}
// Call to update the share intent
private void setShareIntent(Intent shareIntent) {
if (mShareActionProvider != null) {
mShareActionProvider.setShareIntent(shareIntent);
}
}
そして、ここにいくつかの画像があります: 共有リストが最初に作成されます
[すべて見る] をクリックした場合
リストスクロール時
うまくいけば、問題は明確です。また、アイコンをクリックできないことに注意してください。クリックすると、リストの外側をクリックしたように動作し、リストが強制終了されます。