我的微调器出现了一些问题,我用我的列表和数组填充我的微调器,并且可以工作,但是当选择它时,我试图用相关的值填充我的textview ....可能有人或许指出我正确的方向...... 干杯
Spinner spinner1 = (Spinner) findViewById(R.id.spinner2);
ArrayAdapter<CharSequence> adapter1 = ArrayAdapter.createFromResource(
this, R.array.post_array, android.R.layout.simple_spinner_item);
adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(adapter1);
final String post_array_values [] = getResources().getStringArray(R.array.post_array_values);
/** */
spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {
txttvPS.setText(post_array_values[(int) id]);
}
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
这是我的数组和数组值
<!-- String Array for Post Spinner -->
<string name="post_picker"></string>
<!-- Add Name if wanted between picker and before string close -->
<string-array name="post_array">
<item>-- Select Prov --</item>
<item>BC</item>
<item>Alberta</item>
<item>Manitoba</item>
<item>Ontario</item>
<item>Quebec</item>
</string-array>
<string-array name="post_array_values">
<item>0</item><!-- Prov -->
<item>2.25</item><!-- BC -->
<item>12.25</item><!-- Alberta -->
<item>30.25</item><!-- Manitoba -->
<item>56.25</item><!-- Ontario -->
<item>90.25</item><!-- Quebec -->
</string-array>
答案 0 :(得分:0)
使用
txttvPS.setText(getResources().getStringArray(R.array.post_array_values)[pos]);
这将获取相应的数组值
答案 1 :(得分:0)
代替xml中的字符串数组,在代码中使用String数组,如下所示。
String[] data = new String[] {"Default","Cambodian","Chinese","Korean","English","Spanish","Vietnamese"};
TextView txttvPS=(TextView) findViewById(R.id.tvPS);
Spinner spinner1 = (Spinner) findViewById(R.id.spinner2);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(),android.R.layout.simple_spinner_item, data);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1 .setAdapter(adapter);
spinner1 .setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> arg0, View arg1, int pos, long arg3) {
// TODO Auto-generated method stub
txttvPS.setText(spinner1.getItemAtPosition(pos));
}
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});