【已解决】 关于使用Dialog时显示的缺少theme的错误不知如何解决
1.我在recyclerview的item里面加了一个按钮,预计效果是点击按钮跳出弹框,但是程序在点击按钮后崩溃,错误信息如下:

2.代码非常简单,就是一个最基础的弹框功能,程序运行到builder实例化这里就崩溃了:
private void showLogDialog() {
builder = new AlertDialog.Builder(context).setIcon(R.mipmap.user).setTitle("Log信息")
.setMessage("this is a dialog").setPositiveButton("确定(积极)", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//ToDo: 你想做的事情
Toast.makeText(DeviceActivity.this, "确定按钮", Toast.LENGTH_LONG).show();
}
}).setNegativeButton("取消(消极)", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//ToDo: 你想做的事情
Toast.makeText(DeviceActivity.this, "关闭按钮", Toast.LENGTH_LONG).show();
dialogInterface.dismiss();
}
});
builder.create().show();
}
3.相关补充:
第一次发帖,有格式不对的或者别的问题望指正,希望各位不吝赐教。
又是空指针问题,我发现你们提空指针问题都对这个的理解不深刻。
context.getTheme(),你要明白这里的对象是谁,是context,那它说的空指针引用就是指context是空指针,你只需要检查你传进去的context是不是有效的就行了。
确实是context忘记赋值了。。。。。。因为是在DeviceActivity中调用的,所以context = DeviceActivity.this,但是程序还是崩溃。
你这代码是在哪里调用的呀?
是在Activity中,还是service中,又或者是在广播接收者里面呢?