0

私は Eclipse ADT build:v21.1.0-569685 を使用しています。ケース 1 は Web サイトのサンプル コードですが、「型 new AdapterView.OnItemSelectedListener(){} は継承された抽象メソッド AdapterView.OnItemSelectedListener.onNothingSelected( を実装する必要があります)」というエラーが発生します。 AdapterView)」

ケース 2 を使用する必要がありますが、場合によってはケース 1 で問題ありません。何が起こったのですか? ありがとう!

ケース1

private void InitSpinner(){
    ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item,
            nameList.toArray(new String[nameList.size()]));
    adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinnerFolder.setAdapter(adapter1); 
    spinnerFolder.setOnItemSelectedListener(new OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view,
                int position, long id) {
            Toast.makeText(MainActivity.this,
                    "cw", 2000).show();

        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
            // TODO Auto-generated method stub

        }
    }); 
}

ケース 2

private void InitSpinner(){
    ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item,
            nameList.toArray(new String[nameList.size()]));
    adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinnerFolder.setAdapter(adapter1); 
    spinnerFolder.setOnItemSelectedListener(new OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> arg0, View arg1,
                int arg2, long arg3) {
            Toast.makeText(MainActivity.this,
                    "cw", 2000).show();

        }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {
            // TODO Auto-generated method stub

        }
    }); 
}
4

1 に答える 1

1

@ポール

引数名は同じでなければなりませんか?

いいえ、引数名は同じである必要はありません。そのため、両方のコードはまったく同じであり、同じように機能します。

なぜ私は得る

 The type new AdapterView.OnItemSelectedListener(){} must implement the inherited abstract method AdapterView.OnItemSelectedListener.onNothingSelected(AdapterView)

エラー?

コードのその部分を他のプロジェクトからコピーしたか、インターネットから何らかのサイトを介して直接コピーしたに違いないと思います。ここでは、正しい構文をコピーしましたが、同じものを正しくインポートしていません....

試す..

Ctrl+Shift+O を使用して、必要なすべての重要なインポートを整理します...

それが役に立てば幸い.....

于 2013-05-16T15:18:50.347 に答える