我有一个ListView,我通过适配器以dinamically方式填充它。我的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的活动中添加某种类型的监听器,但我失去了它的工作方式和文档太大,无法找到解决方案。
答案 0 :(得分:2)
您可以在构造函数中将活动上下文传递给适配器,然后在适配器类中使用它:
public class MyAdapter {
Context context;
public MyAdapter(Context context, ... ) {
this.context = context;
}
}