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 回答