【问题标题】:How can I create an android menu item using android setting icon如何使用 android 设置图标创建一个 android 菜单项
【发布时间】:2019-10-12 03:50:45
【问题描述】:

您能告诉我如何使用 android 设置图标创建一个 android 菜单项吗?

【问题讨论】:

  • 什么是“安卓设置图标”?
  • 我确定他指的是像these这样的齿轮图标

标签: android


【解决方案1】:

这是list of the standard icons。我没有看到“设置”图标。也许你的意思是“偏好”(ic_menu_preferences)?

您可以像这样以编程方式设置图标:

menu.add(0, MENU_QUIT, 0, "Quit").setIcon(R.drawable.menu_quit_icon);

你也可以像这样在你的 xml 布局中设置它:

<item android:id="@+id/save_button"
      android:icon="@android:drawable/ic_menu_save"
      android:title="Save Image"/>

【讨论】:

  • +1 谢谢,我正在寻找如何从 xml 引用可绘制对象。
  • 代码 xml,在 Material Design (2015) 和 java 中不能正常工作,该行是由其他形式“getMenuInflater(),..”创建的
  • 一定遗漏了什么。不是材料设计,做了上述,我看不到设置图标。在代码中显示在 Android Studio 中,但不在屏幕上!
  • 对我来说,指的是不带 android 前缀的私人图标,例如android:icon="@drawable/abc_ic_menu_share_mtrl_alpha"。即使我没有在我的项目中复制图像,它也可以工作。我想知道如何在没有您在帖子中提到的 android 前缀的情况下引用 Android SDK 的图像。
【解决方案2】:

你可以看到android SDK forder中的所有图标:

_your_install_path_\android-sdk\platforms\android-10\data\res\drawable-hdpi\

然后通过以下方式获取对它们的引用:

android.R.drawable.ic_menu_preferences

就像它是您的可绘制对象一样。

【讨论】:

  • 值得一提:其中一些不公开,因此无法使用。
【解决方案3】:

添加一个新的矢量资源。

  1. 文件 -> 新建 -> 矢量资源。

  1. 点击图标进行更改。

  1. 选择您想要的图标(例如搜索“设置”)。

  1. 调整其他设置。

  2. 在您的 xml 中使用新的矢量资源。

    android:logo="@drawable/ic_settings_white_24dp"
    
  3. 派对!

【讨论】:

    【解决方案4】:

    如果您想处理事件,只需在您的活动中尝试此操作

    @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            switch (item.getItemId()) {
                // action with ID action_refresh was selected
                case android.R.drawable.ic_popup_sync:
                    Toast.makeText(this, "ic_popup_sync selected", Toast.LENGTH_SHORT)
                            .show();
                    break;
                default:
                    break;
            }
    
            return true;
        }
    

    并在您的菜单文件夹中使用如下内容:

    <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="com.example.test.app.MainActivity"
        >
    
        <item android:id="@+id/action_settings1"
            android:icon="@drawable/abc_ic_search"
            android:title="Find Location"
            android:orderInCategory="100"
            app:showAsAction="ifRoom" />
    
        <item android:id="@+id/save_button"
            android:icon="@android:drawable/ic_menu_save"
            android:title="Save Image"/>
    
        <item android:id="@+id/refresh"
            android:icon="@android:drawable/ic_popup_sync"
            android:title="Refresh"/>
    
    
    </menu>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多