我想使用“ AlertDialog”在“对话页面”中创建弹出窗口,但系统显示“无法添加窗口”。
您好,我想创建一个“强力提醒”功能:用户可以为一个特定的联系人/群组添加书签,当用户收到特定联系人发送的消息时,他/她的手机会振动5-10秒/组。
在我的设计中,用户可以在弹出窗口中单击“确认”按钮时停止振动,但是无法实现,我试图在mobicomkit \ src \ main \ java \ com \中添加此功能applozic \ mobicomkit \ api \ notification \ NotificationService.java,该振动器已经创建并运行良好,但是无法创建弹出窗口。
public void warn(){
vibrator =
(Vibrator)context.getSystemService(Context.VIBRATOR_SERVICE);
long[] pattern = {100, 400, 100, 400};
vibrator.vibrate(pattern, 2);
final AlertDialog.Builder builder2 = new AlertDialog.Builder(context);
builder2.setTitle("Warning")
.setMessage("You have one important message !")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
vibrator.cancel();
}
})
.show();
}
Caused by: android.view.WindowManager$BadTokenException: Unable to add
window -- token null is not valid; is your activity running?
at android.view.ViewRootImpl.setView(ViewRootImpl.java:785)
at
android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:356)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:94)
at android.app.Dialog.show(Dialog.java:352)
答案 0 :(得分:1)
final AlertDialog.Builder builder2 = new AlertDialog.Builder(context);
您传递的上下文不是有效的上下文,可以尝试其他上下文。