android - 从android studio的布局文件中的字符串数组访问字符串
问题描述
我正在使用 Android Studio 并在我的 string.xml 文件中有一个数组:
<string-array name="my_array">
<item>text1</item>
<item>text2</item>
<item>text3</item>
</string-array>
我知道如何在 MainActivity.java 文件中访问数组(并获取第一项):
myButton.setText(getResources().getStringArray(R.array.my_array)[0]);
我的问题:是否可以直接在activity_main.xml 文件中设置文本?我试过:
<Button
android:id="@+id/myButton"
android:text="@array/my_array[0]"
... />
但这会导致错误。如果没有“[0]”,它会显示第一个值(text1),但这可能只是因为按钮的大小而没有显示其余部分 - 我无法让它显示其他项目(例如,text2)。
是否可以直接在布局文件中访问数组的一个值?谢谢。
解决方案
我在这里找到了一个很好的答案:https ://stackoverflow.com/a/4161645/933969
基本上,您首先创建命名字符串(并在需要 mystrings[x] 的地方使用那些),然后使用对这些命名字符串的引用创建数组:
<string name="earth">Earth</string>
<string name="moon">Moon</string>
<string-array name="system">
<item>@string/earth</item>
<item>@string/moon</item>
</string-array>
推荐阅读
- gearman - Gearman:第一次使用的麻烦
- python - 安装 virtualenvwrapper virtualenvwrapper.sh 位置时出错
- laravel - 如何将 font-awesome 导入 Laravel?
- jquery - Hybris 中的产品比较
- python - 多对一合并,左加入python
- powershell - Powershell get-adcomputer - 过滤选项对象值
- rest - 启动 HTTP 服务器时如何使用 maven 编译器插件传递参数?
- kibana - 用户管理权限错误
- javascript - d3 将元素重置为其原始颜色
- python - 获取系统文件类型名称python