0

次のコードがありますが、これらのエラーを取り除く方法が見つかりません。

タイプ View のメソッド setOnClickListener(View.OnClickListener) は、引数 (MainActivity) には適用されません。

これは、以下を含む 17、18、19、20、21、22、23、24、25 行に適用されます。

findViewById(R.id.imageButton9).setOnClickListener(this);

31 行目 (新しいクラスが作成される行) で、次のようになります。

ネストされた型 MainActivity は、囲んでいる型を非表示にできません

これは私が取り組んでいるコードです:

package com.example.rome;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.EditText;
import android.widget.Button;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    findViewById(R.id.imageButton1).setOnClickListener(this);
    findViewById(R.id.imageButton2).setOnClickListener(this);
    findViewById(R.id.imageButton3).setOnClickListener(this);
    findViewById(R.id.imageButton4).setOnClickListener(this);
    findViewById(R.id.imageButton5).setOnClickListener(this);
    findViewById(R.id.imageButton6).setOnClickListener(this);
    findViewById(R.id.imageButton7).setOnClickListener(this);
    findViewById(R.id.imageButton8).setOnClickListener(this);
    findViewById(R.id.imageButton9).setOnClickListener(this);



}

class MainActivity extends Activity implements View.OnClickListener {

    @Override
    public void onClick(View v){
      switch(v.getId()){
        case R.id.R.id.imagebutton1:
          startActivity(new Intent(telefoonnummers.class));
          break;
        case R.id.R.id.imagebutton2:
          startActivity(new Intent(telefoonnummers.class));
          break;
        //-- more cases --
        case R.id.R.id.imagebutton9:
              startActivity(new Intent(telefoonnummers.class));
              break;
      }
    }
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

}
4

1 に答える 1

3

誤ったクラス定義を削除します。

class MainActivity extends Activity implements View.OnClickListener {

implements View.OnClickListenerそして、実際のクラス定義に追加します:

public class MainActivity extends Activity  implements View.OnClickListener {
//      Add this to the "real" MainActivity ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

すべてのブレース ( ) が適切に閉じられていることを確認してください{}

于 2013-03-03T17:07:38.867 に答える