如何在android上使用设置图标功能

如何在android上使用设置图标功能,android,menu,icons,Android,Menu,Icons,大家好,我想在菜单项中设置一个图标。我读了安卓开发者博客,上面写着: public abstract MenuItem setIcon (int iconRes) 更改与此项目关联的图标。此图标不会始终显示,因此标题应足以描述此项目。有关支持图标的菜单类型,请参见菜单 此方法将设置图标的资源ID,当显示此项时,该图标将用于惰性地获取可绘制内容 参数:iconRes要显示的新图标(作为资源ID) 返回:此项,以便可以调用其他setter 我应该把一个int作为参数,尤其是图标的ID。但是

大家好,我想在菜单项中设置一个图标。我读了安卓开发者博客,上面写着:

public abstract MenuItem setIcon (int iconRes)    
更改与此项目关联的图标。此图标不会始终显示,因此标题应足以描述此项目。有关支持图标的菜单类型,请参见菜单

此方法将设置图标的资源ID,当显示此项时,该图标将用于惰性地获取可绘制内容

参数:
iconRes
要显示的新图标(作为资源ID)

返回:此项,以便可以调用其他setter

我应该把一个int作为参数,尤其是图标的ID。但是我不知道在哪里可以找到这个ID。我只是将名为“
badIcon.ico
”的图标放在可绘图文件夹中。现在我应该继续吗?
如果您想以静态方式将图标添加到菜单项中,请向大家致谢。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/yourId"
  android:icon="@drawable/badIcon"
  android:title="@string/yourTitle" /> 
</menu>
这太简单了。。。。 请参见本教程

创建menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
      <item android:id="@+id/next"
              android:icon="@drawable/ic_next"
              android:title="@string/next" />
      <item android:id="@+id/previous"
            android:icon="@drawable/ic_previous"
            android:title="@string/previous" />
      <item android:id="@+id/list"
            android:icon="@drawable/ic_list"
            android:title="@string/list" /> 
</menu>
为了拿到菜单

public boolean onOptionsItemSelected(MenuItem item) {
      switch (item.getItemId()) {
      case R.id.next:
            Toast.makeText(this, "You have chosen the " + getResources().getString(R.string.next) + " menu option",
                        Toast.LENGTH_SHORT).show();
            return true;
      …
      default:
            return super.onOptionsItemSelected(item);
      }

是的,这正是我要找的。这工作做得很好。更准确地说。。在这个例子中,我在网上看到了sintax的whas this:menu.add(0,menu_TITLE,0243238).setIcon(98928299);该数字是什么意思?我如何使用这种方法设置图标?该数字可能是自动生成的类R的整数值。您可以通过按住ctrl键并单击R.drawable.badIcon来查看这些数字。例如,单击按住ctrl键的图标。您将在R类中看到整数值。。。这是没有用的,因为这个数字是他们的项目资源的int值。如果你得到了你正在搜索的内容,那么勾选正确的按钮,这样其他人就会知道你得到了你的答案。。希望这会有所帮助。我试着按住ctrl键并左键单击图标(我想这也适用于布局),但什么也没发生。你能给我解释一下在我的情况下我怎么能看到这些号码吗。。感谢您在任何情况下给出的答案:)它不仅仅用于导航布局。如果没有得到这些整数的值,请按Shift键两次。。您将看到到处搜索的提示,然后按大写字母R,您将看到类似于“R(com.yourdomain.com)”的类文件。查看该类中的代码。您将了解数值是什么。。注意:切勿编辑这些代码。
public boolean onCreateOptionsMenu(Menu menu) {
      MenuInflater inflater = getMenuInflater();
      inflater.inflate(R.menu.menu, menu);
      return true;
    }
public boolean onOptionsItemSelected(MenuItem item) {
      switch (item.getItemId()) {
      case R.id.next:
            Toast.makeText(this, "You have chosen the " + getResources().getString(R.string.next) + " menu option",
                        Toast.LENGTH_SHORT).show();
            return true;
      …
      default:
            return super.onOptionsItemSelected(item);
      }