HOME技術AndroidAndroidアプリ:Class ‘Anonymous class derived from OnItemClickListener’…のエラー

Androidアプリ:Class ‘Anonymous class derived from OnItemClickListener’…のエラー

Android Studioで開発中に、ListViewを使っていて以下のようなエラーメッセージが出た場合の理由です。

Class 'Anonymous class derived from OnItemClickListener' must either be declared abstract or implement abstract method 'onItemClick(AdapterView<?>, View, int, long)' in 'OnItemClickListener'

原因はonItemClickメソッドの実装漏れ

上記のエラーメッセージは、特定のメソッド(onItemClick)を実装しなければならない、という警告です。

つまり、コード中に、onItemClickメソッドが実装されていないということになるので、たとえば

public void onItemClick(AdapterView parent, View view, int position, long id){ ... }

をコード中に入れれば動作するようになります。

ListView listView = findViewById(R.id.listview);
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,listword[1]);
listView.setAdapter(arrayAdapter);

listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
    public void onItemClick(AdapterView parent, View view, int position, long id){

}
}

とりあえず、
listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){}
だけ書いて動作確認しようとしたらこのメッセージが出てしまいました。
また、onItemClick()を、OnItemClick()のように一文字が大文字になっているだけでも同様のエラーが出るので、ケアレスミスのチェックも必要です。

関連記事

Androidアプリ:テキストをリスト表示する

Androidアプリで、ListViewを使い、配列に格納したテキストをリスト表示します。 MainActivity.java import android.app.Activity; import …続きを読む

Androidアプリ:ライブラリの更新とエラーの修正

Androidアプリを開発していて、Build.gradle(app)の、dependenciesの項目内でハイライト表示されたり、赤い下線が引かれたりすることがあります。 ハイライトはライブラリを更…続きを読む

Androidアプリ:アプリを更新する場合の設定

一度リリースしたAndroidアプリを更新してアップロードする場合には、必ずバージョンを更新しなければなりません。 今回はバージョンの更新方法について調べました。 build.gradleの修正 bu…続きを読む

Androidアプリ:背景に画像を指定する

Android Studioを使って、背景に画像を設定する方法です。 背景画像を格納する 今回は以下の画像を使います。 画像サイズなどは適当につくります。 Androidは様々な解像度がありますが、画…続きを読む

Androidアプリ:画面遷移時に値を渡す

Androidで画面遷移時に値を渡す方法です。 数値を渡す場合 MainActivity.java public class MainActivity extends Activity { @Over…続きを読む

Androidアプリ:アイコンの下に表示されるテキストの設定

Androidアプリをインストールした後に、スマホ画面に生成されるアイコンの下に表示されるテキストの設定方法です。 AndroidManifest.xml AndroidManifest.xmlを開き…続きを読む

Androidアプリ:画面をタップしたら文字を入れ替える

画面をタップしたら文字を入れ替えるアプリをつくります。 今回はタッチイベントを取得する方法を調べました。 ここではレイアウト定義ファイルを「activity_main.xml」、 プログラムファイルを…続きを読む

Androidアプリ:ボタンやEditTextを角丸にする

Android StudioでボタンやEditTextを配置して、角丸にします。 角丸や色などを指定する場合には、それ専用のxmlファイルを別途用意し、読み込ませるようにします。 ボタンの背景色と角丸…続きを読む

Androidアプリ:クリックイベントとロングクリックイベントを取得する

Androidアプリで、クリックイベントとロングクリックイベントの2つを取得して処理する方法です。 OnClickListenerとOnLongClickListenerを併記 public clas…続きを読む

Androidアプリ:アダプティブアイコンに対応する

AndroidではOS 8.0からAdaptiveアイコン(アダプティブアイコン)というアイコンを用意する必要がでてきました。 これまでの通常のアイコン、ラウンドアイコンに加えて、アダプティブアイコン…続きを読む