如何从操作栏中删除Messenger图标

时间:2013-09-19 11:04:03

标签: android android-actionbar

I Action Bar我正在使用ShareActionProvider,但是面对小问题,我还获得了Messenger Icon以及Share Icon,我不想在我的Action Bar中显示Messenger Icon。

那么如何从Action Bar中删除Messenger图标,请参阅我的代码:

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
         getMenuInflater().inflate(R.menu.main, menu);      
         mShareActionProvider = (ShareActionProvider) menu.findItem(R.id.menu_item_share).getActionProvider();
         if (mShareActionProvider != null) {
         mShareActionProvider.setShareIntent(getDefaultShareIntent());
         }
         return super.onCreateOptionsMenu(menu);
    }

    private Intent getDefaultShareIntent(){
        Intent intent = new Intent(Intent.ACTION_SEND);
        intent.setType("text/plain");
        intent.putExtra(Intent.EXTRA_SUBJECT, "SUBJECT");
        intent.putExtra(Intent.EXTRA_TEXT, "TEXT");
        return intent;
    }

我只是想在我的Action Bar中显示Share Icon而不是Messenger Icon ...

见屏幕截图:

enter image description here

2 个答案:

答案 0 :(得分:1)

欢迎您尝试setShareHistoryFileName(null),看看是否会阻止第二个图标以及历史记录。

否则,您需要编写自己的操作提供程序作为ShareActionProvider的替代。或者,您需要尝试分叉ShareActionProvider来阻止第二个图标。

答案 1 :(得分:0)

以这种方式在布局中创建菜单:

<item
    android:showAsAction="always"
    android:icon="@drawable/share_icon"/>  

当您点击它时,您可以显示默认的共享源。

相关问题