Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从资源文件中提取数组以填充android中的列表_Android - Fatal编程技术网

从资源文件中提取数组以填充android中的列表

从资源文件中提取数组以填充android中的列表,android,Android,我正在处理listbox构建示例,并希望对其进行修改,以便从arrays文件中提取一个数组(继续进行代码和数据分离的工作) 因此,不要像这样在类中声明数组 private static final String[] items={"A", "B", "C","D", "E", "F"}; 我在r.arrays.xml中有一个名为exercises的字符串数组 <resources> <array name="exercises"> <ite

我正在处理listbox构建示例,并希望对其进行修改,以便从arrays文件中提取一个数组(继续进行代码和数据分离的工作)

因此,不要像这样在类中声明数组

private static final String[] items={"A", "B", "C","D", "E", "F"};
我在r.arrays.xml中有一个名为exercises的字符串数组

<resources>
    <array name="exercises">
        <item>Kettlebells - Swing, Two handed</item>
        <item>Kettlebells - Swing, One handed</item>
        <item>Kettlebells - Squat"</item>
        <item>Kettlebells - Deadlift"</item>
        <item>"Kettlebells - Lunge"</item>
        <item>"Kettlebells - Press</item>
    </array>

壶铃-摆动,双手
壶铃-摆动,单手
壶铃-下蹲”
壶铃-无载提升”
“壶铃-弓箭步”
“壶铃-新闻”
取代现有的

setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, items));
setListAdapter(新的ArrayAdapter(这个,android.R.layout.simple_list_item_1,items));

setListAdapter(新的ArrayAdapter(这个,android.R.layout.simple_list_item_1,R.array.exerces));
但是,列表中似乎没有填充数组

感谢所有帮助(来自一个有点困惑的初学者程序员)

参数并不是您认为的参数。第二个int是布局中用于绑定数据的textView的id。您可以使用
getResources().getStringArray(R.array.exercises);
填充
项,然后将该列表传递给ArrayAdapter构造函数。

尝试使用

Resources res = getResources();
setListAdapter(new ArrayAdapter<String>(this, 
               android.R.layout.simple_list_item_1,
               res.getStringArray(R.array.exercises);
Resources res=getResources();
setListAdapter(新阵列适配器)(此,
android.R.layout.simple\u list\u item\u 1,
res.getStringArray(R.array.exercises);
试试这个:

String[] exercises = getResources().getStringArray(R.array.countries_array);  
ArrayAdapter<String> exercisesAdapter=new ArrayAdapter<String>(this, R.layout.simple_list_item_1,exercises);
setListAdapter(exercisesAdapter);
String[]exercises=getResources().getStringArray(R.array.countries\u数组);
ArrayAdapter exerciseAdapter=新的ArrayAdapter(这个,R.layout.simple\u list\u item\u 1,练习);
setListAdapter(exercisesAdapter);

阅读

太棒了——我花了大约五次尝试,只是通读了一遍才让我的头脑清醒过来,但现在我掌握了窍门
String[] exercises = getResources().getStringArray(R.array.countries_array);  
ArrayAdapter<String> exercisesAdapter=new ArrayAdapter<String>(this, R.layout.simple_list_item_1,exercises);
setListAdapter(exercisesAdapter);