0

ListViewがあり、アダプターを介して動的にデータを入力しました。ListViewの各行にはボタンがあり、クリックするとDialogBoxが表示されます。ただし、コンテキストをAlertDialogに渡す方法がわからないため、アクティビティに表示される可能性があります。私が持っているのは次のようなものです:

....//ADAPTER
public View getView(int position, View view, ViewGroup parent) {
   ....
   pay.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            AlertDialog.Builder ad = new AlertDialog.Builder();  
            ad.setMessage("Are you sure?");  
            ad.setPositiveButton("Ok", new DialogInterface.OnClickListener() {  
                public void onClick(DialogInterface dialog, int which) {  
                    dialog.dismiss();                      
                }  
            });  
            AlertDialog dialog = ad.create()();
            dialog.show();
        }
    });
 ....
 }

ListViewを拡張するアクティビティに何らかのリスナーを追加する必要があると思いますが、その方法に迷い、ドキュメントが大きすぎて解決策を見つけることができませんでした。

4

1 に答える 1

2

コンストラクターでアクティビティコンテキストをアダプタに渡し、それをアダプタクラスで使用できます。

public class MyAdapter {
    Context context;

    public MyAdapter(Context context, ... ) { 
        this.context = context;
    }
}
于 2012-11-11T01:04:12.093 に答える