【发布时间】:2012-01-29 05:02:39
【问题描述】:
我想在微调器中挑选项目后设置一个变量。由于我是 Java 新手,我不知道最好的方法是什么。我尝试在选择项目后对其进行测试,但无法使其正常工作。 必须创建一个新变量,并且值必须是 0.5(初学者)、1 (高级)和 1.5(专业)。只要我正在开发我的应用程序,我还希望它在选择项目时显示带有变量值的 toast 消息。
希望有人可以帮助我,因为我现在陷入困境。
我的 Java 代码:
public class AlbumsActivity extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.albums_layout);
Spinner spinner = (Spinner) findViewById(R.id.spinner_experience);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.experience_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
class MyOnItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {
Object test = spinner.getSelectedItem();
if "Pro".equals(test) {
// Do something
Toast.makeText(parent.getContext(), "The planet is " +
parent.getItemAtPosition(pos).toString(), Toast.LENGTH_LONG).show();
}
}
public void onNothingSelected(AdapterView<?> parent) {
// Do Nothing
}
}
spinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
}
布局xml
<LinearLayout
android:orientation="vertical"
android:padding="10dip"
android:id="@+id/linearLayout_Experience"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:text="@string/experience_prompt" />
<Spinner
android:id="@+id/spinner_experience"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawSelectorOnTop="false"
android:prompt="@string/experience_prompt" />
</LinearLayout>
还有我的微调器弦:
<resources>
<string name="experience_prompt">Select your experience</string>
<string-array name="experience_array">
<item>Beginner</item>
<item>Advanced</item>
<item>Pro</item>
</string-array>
【问题讨论】:
标签: android variables spinner toast