私はAndroidが初めてです。さまざまな文字列配列の条件付きアダプター (文字列変数に依存) を作成しようとしました。
TextView textPrompt;
textPrompt = (TextView)findViewById(R.id.textprompt);
final String acType = i.getStringExtra("type");
textPrompt.setText(acType);
if (acType == "400G"){
spinnerSurface = (Spinner) findViewById(R.id.spinnerSurface);
ArrayAdapter<CharSequence> adapterSurface = ArrayAdapter.createFromResource(
this, R.array.surface_option_1, android.R.layout.simple_spinner_item);
adapterSurface.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerSurface.setAdapter(adapterSurface);
}
else if (acType != "400G"){
spinnerSurface = (Spinner) findViewById(R.id.spinnerSurface);
ArrayAdapter<CharSequence> adapterSurface = ArrayAdapter.createFromResource(
this, R.array.surface_option, android.R.layout.simple_spinner_item);
adapterSurface.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerSurface.setAdapter(adapterSurface);
}
spinnerSurface.setOnItemSelectedListener(new Spinner.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View v,
int position, long id) {
TextView tx = (TextView)v;
Log.i("\n\nid",String.valueOf(tx.getText()));
}
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
textPrompt を使用して acType の値を確認します。acType が「400G」であっても「400G」でなくても、プログラムは acType を「400G」ではないと解釈するため、R.array.surface_option1 の代わりに R.array.surface_option が使用されます。助けてください。