我的应用程序中有一些小菜单,我想使用Android的图标。 例如,使用代码,工作正常:
<item
android:id="@+id/mnuMainHelp"
android:icon="@android:drawable/android:ic_menu_help"
android:title="@string/menu_main_help">
</item>
但如果我下一个代码,app就不会编译:
<item
android:id="@+id/mnuMainUpdateDB"
android:icon="@android:drawable/android:ic_menu_refresh"
android:title="@string/menu_main_update_db">
</item>
错误消息是:
... \ res \ menu \ main_menu.xml:4:错误:错误:资源不公开。 (在'icon'处,值为'@ android:drawable / android:ic_menu_refresh')。
我哪里错了?
答案 0 :(得分:3)
尝试android:icon =“@ android:drawable / ic_menu_refresh” - 除外,这不起作用。请参阅下面的编辑。
编辑:显然有些绘图不公开,请参阅Android drawable ic_menu_star not working?
您可以从Android来源或http://androiddrawables.com/
获取实际资源的副本答案 1 :(得分:2)
您没有公共资源,这就是您收到错误的原因错误:资源不公开
http://developer.android.com/reference/android/R.drawable.html
这是菜单drawables。
int ic_menu_add
int ic_menu_agenda
int ic_menu_always_landscape_portrait
int ic_menu_call
int ic_menu_camera
int ic_menu_close_clear_cancel
int ic_menu_compass
int ic_menu_crop
int ic_menu_day
int ic_menu_delete
int ic_menu_directions
int ic_menu_edit
int ic_menu_gallery
int ic_menu_help // you have this
int ic_menu_info_details
int ic_menu_manage
int ic_menu_mapmode
int ic_menu_month
int ic_menu_more
int ic_menu_my_calendar
int ic_menu_mylocation
int ic_menu_myplaces
int ic_menu_preferences
int ic_menu_recent_history
int ic_menu_report_image
int ic_menu_revert
int ic_menu_rotate
int ic_menu_save
int ic_menu_search
int ic_menu_send
int ic_menu_set_as
int ic_menu_share
int ic_menu_slideshow
int ic_menu_sort_alphabetically
int ic_menu_sort_by_size
int ic_menu_today
int ic_menu_upload
int ic_menu_upload_you_tube
int ic_menu_view
int ic_menu_week
int ic_menu_zoom
但根据这个
http://androiddrawables.com/Menu.html您有ic_menu_refresh
,而且可能不公开。
使用发布的第一个链接中的那个
编辑:
同时查看此链接
http://developer.android.com/reference/android/package-summary.html
从上述链接中引用
您不应该使用Android软件包中的可绘制资源,因为它们可能会在平台版本之间发生变化,从而导致与您的设计无法预料的冲突。通常,样式是您应该直接从这些资源中使用的唯一资源。