简单地说,我创建了一个微调器。在 my 中有微调条目和条目值array.xml
。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="select">
<item>a</item>
<item>b</item>
<item>c</item>
</string-array>
<integer-array name="selectValues">
<item>1</item>
<item>2</item>
<item>3</item>
</integer-array>
</resources>
这里也是我的linearlayout
.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/selectLayout"
>
<TextView
android:id="@+id/tvSelect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="@string/select"
android:textSize="18sp"
android:layout_gravity="center"
/>
<Spinner
android:id="@+id/sSelect"
android:layout_width="179dp"
android:layout_height="60dp"
android:layout_gravity="center"
android:entries="@array/select"
android:prompt="@string/sec"
android:spinnerMode="dialog"
/>
</LinearLayout>
在我创建的活动中OnItemSelectedListener
,当用户选择一个项目时,我想更改TextView
. 我认为使用switch时有问题。
这里是活动。
public class Select extends Activity implements OnItemSelectedListener{
int[] itemValues;
TextView t;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
Resources rsc = getResources();
itemValues = rsc.getIntArray(R.array.selectValues);
t = (TextView) findViewById(R.id.tvSelect);
setContentView(R.layout.select);
Spinner form = (Spinner) findViewById(R.id.sSelect);
form.setOnItemSelectedListener(this);
}
@Override
public void onItemSelected(AdapterView<?> item, View which, int sort,
long arg3) {
// TODO Auto-generated method stub
switch(which.getId())
{
case R.id.sSelect:
int value = itemValues[sort];
t.setText(value);
break;
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
}
如何解决?
编辑:当我尝试删除开关时,unfortunately has stopped
出现错误。