我刚刚开始使用Android开发,我创建了一个漂亮的小部件,在我的主屏幕上显示一些信息.但是,我现在想要在我的小部件上实现一个按钮来更新我的小部件TextView中的信息.
任何人都可以建议如何做到这一点?
谢谢
big*_*ony 23
已解决 - 如果您想创建一个Button来更新Android AppWidget,我可以确认不需要Activity.
我已经能够实现我的AppWidgetProvider类,以便它在AndroidManifest.xml中向Broadcast接收器注册一个android.appwidget.action.APPWIDGET_UPDATE intent-filter,然后在AppWidgetProvider类中触发onUpdate事件(然后运行UpdateService).
<!-- Broadcast Receiver that will process AppWidget updates -->
<receiver android:name=".MyWidget" android:label="@string/widget_name">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider" android:resource="@xml/widget" />
</receiver>
Run Code Online (Sandbox Code Playgroud)
然后,我的AppWidgetProvider类中的UpdateService使用onHandleIntent来运行私有buildUpdate方法 - 通过调用setOnClickPendingIntent来注册onClick事件,如下所示:
// set intent and register onclick
Intent i = new Intent(this, MyWidget.class);
PendingIntent pi = PendingIntent.getBroadcast(context,0, i,0);
updateViews.setOnClickPendingIntent(R.id.update_button,pi);
Run Code Online (Sandbox Code Playgroud)
以下是工作示例的一些源代码的链接,其中显示了如何使用更新按钮来更新Twitter小部件:
| 归档时间: |
|
| 查看次数: |
33699 次 |
| 最近记录: |