-1

こんにちは、Javaコードにスピナーを入れようとしましたが、else ifステートメントエラーに表示されます:

    private EditText textName;
    private EditText textContent;
    private Spinner CategorySpinner;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_text);



        configureButton1();
        configureButton2();

        textName = (EditText) findViewById(R.id.editTextName);
        textContent = (EditText) findViewById(R.id.editContent);
        CategorySpinner = (Spinner) findViewById(R.id.editCategorySpinner);



    }

    private void configureButton1() {
        Button del = (Button)findViewById(R.id.btNewText);
        del.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent myIntent = new Intent(v.getContext(), StartActivity.class);
                v.getContext().startActivity(myIntent);
            }
        });
    }

    private void configureButton2() {
        Button save = (Button) findViewById(R.id.btSave);

        save.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (textName.getText().length() == 0) {
                    textName.requestFocus();
                    return;
                } else if (textContent.getText().length() == 0) {
                    textContent.requestFocus();
                    return;
                } else if (CategorySpinner.**getText**().length() == 0) {
                    CategorySpinner.requestFocus();
                    return;
                } else {
                    //next Step: get the mood
                    Intent myIntent = new Intent(v.getContext(), Activity2.class);
                myIntent.putExtra("textName", textName.getText().toString());
                myIntent.putExtra("textContent", textContent.getText().toString());
                myIntent.putExtra("CategorySpinner", CategorySpinner.**getText()**.toString());
                v.getContext().startActivity(myIntent);
            }
                }
            }
        });
        }

CategorySpinner.getText() にエラーが表示されます。あなたが私を助けてくれることを願っています。私はたくさん試しましたが、解決策が見つかりませんでした。

4

2 に答える 2

0

スピナーにアダプターを提供していません。アダプターには以下のコードを使用してください。

Spinner spinner = new Spinner(this);
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, spinnerArray);
spinner.setAdapter(spinnerArrayAdapter);

その後、以下のコードを使用するよりもアイテムのテキストが必要な場合:

String value = spinnerArray[spinner.getSelectedItemPosition()];

スピナーで選択したアイテムの値を返します。デフォルトは 0 です。

于 2013-07-19T11:58:12.963 に答える