ListView を持つアクティビティがあり、アダプターを設定しました
MyAdapter extends BaseAdapter
そのアダプタにはコールバック インターフェイスがあります
OnPdfClickedListener callback;
public interface OnPdfClickedListener {
public void onPdfClicked();
}
そしてアクティビティで
MyActvivity implements MyAdapter.OnPdfClickedListener
と
@Override
public void onPdfClicked() {
Log.d("TEST", "PDF CLICKED in ACTVIIVTY");
}
これは、ここで説明したものとほぼ同じで、フラグメントのチャームのように機能します。アダプタから同じことを試みると、コールバック オブジェクトは null です。
私も次のようにインスタンス化してみました
OnPdfClickedListener callback = new OnPdfClickedListener() {
@Override
public void onPdfClicked() {
// TODO Auto-generated method stub
}
};
エラーはありませんが、アクティビティのそれぞれのメソッドは呼び出されません。
私の質問は 1. フラグメントで使用されたときにコールバック オブジェクトが null にならないのはなぜですか。インスタンス化されることはありません。
2.アダプタからアクティビティにコールバックするにはどうすればよいですか?