私はかなりの時間Android用に開発しています。私はネイティブに.Net開発者です。私が直面している問題は、自分のコードがひどいように見えて、Javaの\ Androidがコードにクリックイベントを表示するかどうかわからないことです。下のこの例では、私はクリックイベントでリストビューを持っています。Androidでリスナーをクリックする方がクリーンなアプローチはありますか?
list_view.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
}
});
.Net。私は、コンポーネントの初期化メソッドでクリックイベントを設定してからメインコードページに実装しました。下にクリックイベントメソッドを使用するようにアンドロイドに指示するにはどうすればよいですか。多分このような何か?
list_view.setOnItemClickListener(onItemClick());
後でコードページにアクセスしてください。
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
}
});
私はイベントを自分のコントロールに配線するためのよりクリーンなアプローチを探しているので、コードをよく読むことができます。もともと.Net開発者であったときにJavaとAndroidに移行するのは難しい作業です。
ありがとうございます!
編集は、私はここに私の仕事を掲示下の答えをいただき、ありがとうございます。
list_view.setOnItemClickListener(list_view_onItemClickListener);
//below in my code
private OnItemClickListener list_view_onItemClickListener = new OnItemClickListener(){
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
}
};
これは、Javaでは[匿名クラス](http://littletutorials.com/2008/03/09/anonymous-inner-classes/)と呼ばれています。クラシックな内部クラスパターンを使用して、クラスの実装を記述して参照することができます。 – yorkw