0

リストビューを作成するカスタム アダプターがあります。

各行には、getView() メソッドで OnCheckedChangeListener が設定されたチェックボックスがあります。

その点ですべてが機能していますが、アダプターのイベントリスナーからリストビューを「ホスト」しているアクティビティでオプションメニューを開きたいです。

Activity のインスタンスを無駄に渡そうとしましたが、openOptionsMenu() は静的ではないため、Adapter クラスから Activity の openOptionsMenu() を使用して静的メソッドにアクセスできません。

何か案は?

私はアダプタをそのように割り当てています。

mAdapter = new CustomFileAdapter<String>(this, filenames, this);(コンテキスト、配列、アクティビティ)

そして、アダプターのコンストラクターは次のようになります。

public CustomFileAdapter(Context context, String[] images, Activity a)

4

2 に答える 2

0

Adapter は Activity クラス内にありますか? 簡単な方法で親にアクセスできます

Activityname.this

それ以外の場合は、アクティビティをどのようにパスしようとしたかを投稿してください。どこが間違っているかがわかります。

于 2012-11-07T13:30:22.770 に答える
0

Adapter クラスでコールバックを作成して、メインのアクティビティを通知するだけでこれを解決しました。

于 2012-11-20T17:50:36.700 に答える