我的数组在我的strings.xml文件中声明如下:
<string-array name="metal_array">
<item >Copper</item>
<item >Aluminum</item>
</string-array>
<string-array name="temperature_array">
<item >60C°, 140F°</item>
<item >75C°, 167F°</item>
<item >90C°, 194F°</item>
</string-array>
和在活动的onCreate()方法中添加的适配器:
Spinner metalSpinner = (Spinner) findViewById(R.id.metal_spinner);
ArrayAdapter<CharSequence> metalAdapter = ArrayAdapter.createFromResource(this, R.array.metal_array, android.R.layout.simple_spinner_item);
metalAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
metalSpinner.setAdapter(metalAdapter);
Spinner temperatureSpinner = (Spinner) findViewById(R.id.temperature_spinner);
ArrayAdapter<CharSequence> temperatureAdapter = ArrayAdapter.createFromResource(this, R.array.temperature_array, android.R.layout.simple_spinner_item);
temperatureAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
temperatureSpinner.setAdapter(temperatureAdapter);
如果不对activity.xml文件进行任何更改,只需在strings.xml文件中切换声明两个数组的顺序,就可以反转放入数组的微调器。这对我来说毫无意义,因为一切都是通过名字引用的。有什么想法吗?
答案 0 :(得分:3)
数组XML被编译成类文件,其名称将变为基于整数的ID。当您更改订单时,它们会被重新编译,元素会获得新的ID。对于你来说,任何使用旧ID的类文件都会以有趣的方式运行。