時にはRecyclerViewアダプタで使用すると、各行の項目をクリックしたときには、関数を呼び出すと便利ですので、私はインターフェイスを定義し、そのようにリスナーを割り当てる:アダプタでインタフェースリスナを割り当てる正しい場所はどこですか?
public class MyRecyclerViewAdapter extends RecyclerView.Adapter<MyRecyclerViewAdapter.RecyclerViewHolder> {
private List<SomeObject> mSomeObjectList;
private Context mContext;
private RowClickListener mListener;
public interface RowClickListener {
void someFunction(SomeObject someObject);
}
public MyRecyclerViewAdapter(Context context, List<SomeObject> objects) {
mContext = context;
mSomeObjectList = objects;
mListener = (RowClickListener) context;
}
//...
が、これはそれを行うための正しい方法ですか?私は、人々がFragmentクラスでリスナーを割り当てるとき、通常はOnAttachメソッドでそれを行い、アダプタの場合は実際には存在しないように見えます。ここでは、適切な場所とは何でしょうか?
リスナーオブジェクトはいつ作成しますか? –