項目をスピナーで選択した後に変数を設定したい。私はJavaに新しいので、これを行う最良の方法は何か分かりません。私はそれが選択された後に項目をテストしようとしましたが、それを動作させることができません。 新しい変数を作成しなければならず、値はBeginnerの場合は0.5、Advancedの場合は1、Proの場合は1.5でなければなりません。アプリケーションを開発している間は、アイテムが選択されたときに変数の値を使ってトーストメッセージを表示したいと考えています。スピナー項目を選択して変数を設定する - Android
私は瞬間に立ち往生しているので、誰かが私を助けてくれることを願っています。
私の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>