Listenerに無名クラスを直接渡す方法

Listener実装方法

OnItemClickListenerを例にして説明します。

このパターンでは、ViewのOnItemClickListenerに、
OnItemClickListenerインターフェースで実装した無名クラスのインスタンスをそのまま渡します。

実行されるメソッド(ここではonItemClickメソッド)の処理も合わせて定義します。
無名クラスやコールバック処理が良くわからないという方は、ググって調べてみてください。

lv = (ListView) findViewById(R.id.listview);
        
//リスト項目が選択された時のイベントを追加
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        String msg = position + "番目のアイテムがクリックされました";
        Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_LONG).show();
    }
});

コメント

タイトルとURLをコピーしました