android–Widget在点击时启动Dialog

android–Widget在点击时启动Dialog,第1张

概述是否可以在窗口小部件上单击启动对话框,或者是否必须在窗口小部件上启动活动,然后单击对话框?解决方法:我相信你已经解决了这个问题,但无论如何我都会写在这里,万一其他像我这样的人会回答这个问题.要通过单击窗口小部件启动对话框,您可以定义一个样式为对话框的活动,并在单击窗口

是否可以在窗口小部件上单击启动对话框,或者是否必须在窗口小部件上启动活动,然后单击对话框?

解决方法:

我相信你已经解决了这个问题,但无论如何我都会写在这里,万一其他像我这样的人会回答这个问题.

要通过单击窗口小部件启动对话框,您可以定义一个样式为对话框的活动,并在单击窗口小部件时启动它.

首先在清单中添加活动,让我们称之为DialogWidgetActivity

<activity    androID:name=".DialogWidgetActivity"    androID:theme="@androID:style/theme.Dialog"    .../>

然后在你的WidgetProvIDer中,让我们调用它MyWidgetProvIDer通过启动活动来绑定小部件的点击

public class MyWidgetProvIDer extends appwidgetprovider {public voID onUpdate(Context context, AppWidgetManager appWidgetManager,        int[] appWidgetIDs) {    final int N = appWidgetIDs.length;    // Perform this loop procedure for each App Widget that belongs to this    // provIDer    for (int i = 0; i < N; i++) {        int appWidgetID = appWidgetIDs[i];        // Create an Intent to launch the activity-dialog        Intent intent = new Intent(context, DialogWidgetActivity.class);        PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);        // Get the layout for the App Widget and attach an on-click Listener        // to it        RemoteVIEws vIEws = new RemoteVIEws(context.getPackagename(),                R.layout.Widget);        vIEws.setonClickPendingIntent(R.ID.Widget_container, pendingIntent);        // Tell the AppWidgetManager to perform an update on the current app        // Widget        appWidgetManager.updateAppWidget(appWidgetID, vIEws);    }}}

请注意,这里我们将活动的启动绑定到对话框的Widget_container元素上的单击.您可以通过将ID Widget_container(androID:ID =“@ ID / Widget_container”)分配给窗口小部件布局的根元素来轻松实现此目的.

然后,您可以像对待正常的全屏活动一样编写活动对话框及其布局.

我的消息来源是this answer和the Android documentation.

希望我帮助:)

总结

以上是内存溢出为你收集整理的android – Widget在点击时启动Dialog全部内容,希望文章能够帮你解决android – Widget在点击时启动Dialog所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1115387.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存