我有一个问题是,在strings.xml文件中的布局文件中提供我们将要使用的所有字符串文本是否合适,或者我们应该在布局文件本身的“字符串文本”中为属性值提供它android:text="some text"
。
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:id="@+id/ll1"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button android:text="Button"
android:id="@+id/butShow"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</Button>
</LinearLayout>
然后提供android:text="Button"
或我们应该使用android:text="@string/btnlabel"
的strings.xml
<resources>
<string name="btnLabel">Button</string>
</resources>
我们应该在strings.xml中指定所有字符串文本,或者只指定特定的字符串文本。
答案 0 :(得分:1)
在查看android.content.res.resources和其他一些类的源代码之后,很明显使用资源和通过getResources()
获取资源有点代价。
然而, 使用getResources()有其优势 :
对于任何类型的资源,您可以指定默认和多个替代资源,具体取决于区域设置,屏幕深度/分辨率 ...
答案 1 :(得分:0)
如果您决定将应用程序国际化,最好将所有字符串解压缩到strings.xml!那么你只需为每种语言做一个不同的strings.xml而不是布局