gpt4 book ai didi

android - 如何在小部件上显示对话框?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:16:20 26 4
gpt4 key购买 nike

我想显示一个对话框,就像我在 Activity 上使用 showDialog(...) 时一样,但我需要在小部件上这样做,所以我不能使用 showDialog(...)。我该怎么做?

我在我的 onReceive 方法上试过这个但是它崩溃了:

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();

谢谢,瓦莱里奥

最佳答案

小部件并不旨在支持这种交互,并且由于它们在您的启动器的 UID 而不是您的应用程序的 UID 下运行,因此它们将无法访问数据库。 (这可能是您崩溃的原因;请查看日志以确保确定。)

在您的应用程序中启动一个 Activity 来执行您想要的操作。如果您希望它看起来像一个对话框,请应用 Theme.Dialog 样式:

<activity
android:name=".MyThing"
android:label="@string/mythinglabel"
android:theme="@android:style/Theme.Dialog"
/>

关于android - 如何在小部件上显示对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3862756/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com