0
私はスピナーオブジェクトからアイテムを取得するために何時間も試しましたが、私は常にスピナーアレイから最初のアイテムを取得します。 配列はstring.xmlで定義されています。 このような間違いは、さまざまなコンテキストによって引き起こされますか? 私はgetSelectedItemコマンドを使用すると、私は代わりに、この行のAndroid Studio - スピナー - スピナーアイテムを取得できない
String taskName;
String taskTag;
Spinner spinner;
ArrayAdapter<CharSequence> adapter;
public void newTaskName() {
final AlertDialog.Builder taskBuilder = new AlertDialog.Builder(MainActivity.this);
final View bView = getLayoutInflater().inflate(R.layout.dialog_taskname, null);
final EditText bTaskName = (EditText) bView.findViewById(R.id.taskNameEditText);
Button buttonAdd = (Button) bView.findViewById(R.id.buttonAdd);
Button buttonBack = (Button) bView.findViewById(R.id.buttonBack);
taskBuilder.setView(bView);
final AlertDialog dialog = taskBuilder.create();
dialog.show();
buttonAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!bTaskName.getText().toString().isEmpty()) {
taskName = bTaskName.getText().toString();
taskTag = (String) spinner.getSelectedItem();
dialog.dismiss();
System.out.println("Das ist der Tag: "+ taskTag);
newTask(taskName, taskTag);
} else {
(...)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog_taskname);
spinner = (Spinner) findViewById(R.id.spinner_WT);
adapter = ArrayAdapter.createFromResource(this, R.array.array_wochentage, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Object item = spinner.getItemAtPosition(position);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
setContentView(R.layout.activity_main);
(...)
何が起こっていない、私はのSystem.outを追加しましたが、それは、この方法のように思える – LimoFlasch
は、なぜあなたは二回setContenView(...)を呼び出しているアクティブ化されたことがないのですか?異なるパラメータで? – Danger
これは、スピナーのnullオブジェクトの参照を防ぐために私が見つけた唯一の方法です。スピナーはアリーのダイアログで使用されます – LimoFlasch