我在xml中定义了一个简单的列表视图:
<ListView
android:id="@+id/mode_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="true"
android:entries="@array/mode_array_generic" />
我在string.xml中定义了三个不同的字符串数组(一个是“mode_array_generic”),我想根据一些传递的参数选择在片段启动时加载哪个字符串数组。
在“onCreateView”期间,是否有一种简洁的方法将“条目”字段重定向到不同的字符串资源?
答案 0 :(得分:0)
MikeM。的评论给了我需要的提示。这是我的解决方案,供将来参考。
使用switch或if-else块获取基于参数的字符串数组:
String[] modeList = getActivity().getResources().getStringArray(R.array.mode_array_generic);
然后用它创建一个ArrayAdapter:
ArrayAdapter<String> adapter = new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, modeList);
(“android.R.layout.simple_list_item_1”作为布局的资源ID,我被卡住了)
只需在ListView上设置适配器:
ListView listView = (ListView) rootView.findViewById(R.id.mode_list);
listView.setAdapter(adapter);