无法访问android / drawable Icon-Resource

时间:2011-12-05 11:00:35

标签: android xml icons android-optionsmenu

我正在创建一个Optionsmenu,因为我使用了Android Icon-Resource。但我无法访问它们,我做错了什么。我需要改变什么?

这是我的menu.xml的代码

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:id="@+id/Videos"
          android:icon="@android/drawable/ic_menu_view"
          android:title="Videos" />

    <item android:id="@+id/Bio"
          android:icon="@android/drawable/ic_menu_friendlist"
          android:title="Biographie" />

    <item android:id="@+id/Support"
          android:icon="@android/drawable/ic_menu_star"
          android:title="Support" />

</menu>

提前感谢您的帮助!

3 个答案:

答案 0 :(得分:23)

您几乎是正确的,在访问框架资源时,您必须在资源类型前加android:作为前缀,因为您在这里using the android package。这意味着它不应该是

android:icon="@android/drawable/ic_menu_view"

android:icon="@android:drawable/ic_menu_view"

代替(注意android和drawable之间的冒号而不是正斜杠)


另请注意,您无法访问某些资源,因为它们不是公开的,例如您在此处使用的ic_menu_star。您必须将它们复制到项目可绘制文件夹中,这意味着您必须在执行此操作后通过正常@drawable/ic_menu_star访问它们。请参阅this question以供参考。

答案 1 :(得分:1)

尝试:

android:icon="@android:drawable/ic_menu_view"

而不是:

android:icon="@drawable/ic_menu_view"

答案 2 :(得分:-2)

试试这个:

<item android:id="@+id/Videos"
      android:icon="@drawable/ic_menu_view"
      android:title="Videos" />

<item android:id="@+id/Bio"
      android:icon="@drawable/ic_menu_friendlist"
      android:title="Biographie" />

<item android:id="@+id/Support"
      android:icon="@drawable/ic_menu_star"
      android:title="Support" />

我认为@ android / drawable /是不正确的。您应该使用@drawable /

你可以看到它:http://developer.android.com/guide/topics/ui/menus.html

希望这会有所帮助......