Android 如何在小部件上显示对话框?
我想显示一个对话框,比如在活动上使用showDialog(…),但我需要在小部件上显示,所以我不能使用showDialog(…)。我该怎么做 我在onReceive方法上尝试了此操作,但它崩溃了:Android 如何在小部件上显示对话框?,android,dialog,widget,Android,Dialog,Widget,我想显示一个对话框,比如在活动上使用showDialog(…),但我需要在小部件上显示,所以我不能使用showDialog(…)。我该怎么做 我在onReceive方法上尝试了此操作,但它崩溃了: AlertDialog.Builder builder; builder = new AlertDialog.Builder(context); builder.setMessage("Are you sure?") .setCa
AlertDialog.Builder builder;
builder = new AlertDialog.Builder(context);
builder.setMessage("Are you sure?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
db.open();
db.remove_last();
db.close();
dialog.dismiss();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
builder.show();
谢谢,Valerio小部件不支持这种交互,因为它们在启动器的UID下运行,而不是在应用程序的UID下运行,所以它们无法访问数据库。(这可能是导致您崩溃的原因;请查看日志以确定原因。) 在应用程序中启动一个活动,以实现您的目标。如果希望它看起来像一个对话框,请应用
主题。dialog
样式:
<activity
android:name=".MyThing"
android:label="@string/mythinglabel"
android:theme="@android:style/Theme.Dialog"
/>
对话框必须来自某个活动,而不是小部件。数据库不是问题所在,没有问题,没有db代码也会崩溃。我想创建一个对话框进行确认!发布崩溃日志会很有帮助,这使得编写可重用代码成为一件痛苦的事情。除此之外,纺纱工是如何做到的?