我已将Context发送到适配器
public ImageAdapter(Context context, List<Image> imagesList) {
this.context = context;
mImageList = imagesList;
}
我用这种方式使用AlertDialog:
AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.AlertDialogCustom);
但我收到了错误:
Unable to add window -- token null is not valid; is your activity running?
答案 0 :(得分:2)
在您调用适配器的地方相应地从activity / fragment发送上下文为ActivityName.this / getActivity()
答案 1 :(得分:0)
为此,您需要定义回叫。
将对象定义为适配器的参数,如
public ImageAdapter(Context context,List imagesList,Callback 打回来) { this.context = context; mImageList = imagesList; this.callback = callback; }
在您的调用回调内部调用方法,因为您希望您的活动将听取此操作,并且在您的活动中使用此方法可以创建警报对话框
答案 2 :(得分:0)
你应该将Activity而不是Context传递给AlertDialog.Builder的构造函数。你必须确保在对话框运行时活动正在运行