Android附带了大量系统资源(android.R
),可用于节省时间并使应用程序更轻松。
例如,我最近发现Android为Yes(android.R.string.yes
),No(android.R.string.no
),Cancel(android.R.string.cancel
)和Ok(android.R.string.ok
)提供了本地化字符串,以及其他字符串。
您建议使用哪些其他系统资源?或者有理由避免使用系统资源吗?
编辑:正如Tomas所述,其中一些资源可能无法产生您期望的结果(特别是,android.R.string.yes/no
会返回OK/Cancel
而不是Yes/No
,正如所报告的那样{{3} })。为了获得更好的控制,您可以从Android源代码中复制系统资源。
答案 0 :(得分:52)
您可以在android package中找到所有系统资源的完整列表。
每当我想在Android上做某事时,我都会检查是否有一个涵盖我想要做的事情的系统资源。在搜索您可能需要的已实现资源时,导入Android源代码(特别是their /res/ folder)会很有帮助,因此您可以看到它们的具体实现。
就个人而言,我发现自己经常使用:
android.R.id
),因为如果您想使用某些Android小部件,通常需要使用这些内容(例如,TabHost/TabWidget
要求您使用“android:id/tabhost
” ,“android:id/tabs
”和“android:id/tabcontent
”,如果你想实现XML布局)。android.R.color.transparent
。android.R.anim
中内置的淡入和淡出动画。答案 1 :(得分:16)
您可以通过使用Android软件包名称对其进行access system resources来{{3}}
答案 2 :(得分:6)
正如CommonsWare所提到的,您不必下载Android源代码库来检查资源;只需转到<android-sdk-dir>/platforms/android-X.X/data/res/
。但是,如果您开始使用这些内容,您很快就会发现大多数不可通过android.R
课程感到失望。大多数时候我必须将它们导入我的Eclipse工作区。 : - (
我最喜欢的资源是基于控件的聚焦/按下/禁用状态(如android.R.drawable.btn_default)显示不同的drawable。我使用它们或调整它们为我的应用程序创建自定义按钮。正如您所看到的那样/data/res/drawable/btn_default.xml
,它们被定义为<selector>
XML元素,它在运行时被夸大为StateListDrawable
。您还可以创建自己的StateListDrawables,它们非常有用,包括View背景和按钮的“复合drawable”(参见TextView.setCompoundDrawables()
)。
答案 3 :(得分:1)
请注意,翻译非常糟糕。
例如,android-25中的德语“no”是“Abbrechen”,实际上意味着“取消”。 “是”被翻译为“确定”......
我不确定其他语言有多好,所以我会使用自己的翻译。