【问题标题】:Android Studio Share Icon doesn't appear in my other activityAndroid Studio 共享图标未出现在我的其他活动中
【发布时间】:2014-11-23 08:11:53
【问题描述】:

您好,我正在尝试在我的其他活动中的另一个视图上的操作栏中实现一个共享按钮。我可以在预览中看到正在实现的按钮,但是当我运行它时它没有显示出来。但是,设置图标出现了(即使我删除了它,当我点击它时,下拉菜单会出现,当我点击它时,它就像我的分享按钮。

这是我的 menu.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".BlogWebViewActivity" >

    <item android:id="@+id/action_share"
        android:icon="@drawable/ic_action_share_dark"
        android:showAsAction="ifRoom"
        android:title="@string/action_share">
    </item>
</menu>

![menuview]http://i692.photobucket.com/albums/vv287/kkmoslehpour/layout-2014-09-27-224803_zpse6426bf8.png

但是当我在模拟器中运行它时,它仍然显示设置图标。我正在使用 genymotion 运行它,我也尝试在 android 模拟器中运行它,但还是一样。 我尝试清理项目并重建项目。不知道问题出在哪里。

【问题讨论】:

  • 您确定在 onCreateOptionsMenu 方法中引用了正确的菜单 xml 文件吗?听起来有一个默认菜单显示以及您的自定义菜单,并且您的整个菜单的点击侦听器设置为共享(这就是设置选项似乎正在执行共享的原因行动也)。

标签: android xml android-activity android-studio


【解决方案1】:

确保覆盖这些方法:onCreateOptionsMenu(Menu menu)onOptionsItemSelected(MenuItem item)

此外,如果您在片段中实现此功能,请确保您的代码中某处有 setHasOptionsMenu(true)。我通常将它放在onActivityCreated 下,以确保在创建活动后启用它。

【讨论】:

  • 这些方法已经被覆盖,但是,我仍然遇到同样的问题。我看到的是设置图标而不是分享图标,但在我的预览中我看到的是分享图标。
  • 预览只会显示当前的许多。但是,实际上您可能有堆叠菜单,例如: 通常一个活动将具有设置菜单项。然后,如果您有带有自己的菜单项的片段,例如共享菜单项,然后将附加这些菜单项。但是除非您在片段中设置了 setOptionsMenu(true),否则您只会看到活动中的设置菜单。这就是我认为正在发生的事情。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-11
  • 2022-09-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多