我有一个很好用的数字小部件时钟!但这里的问题是它没有更新我的意思是它只是显示我添加到主屏幕的那一刻的时间!!!
在 widget.java 中:我有一个这样的 onUpdate:
Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
super.onUpdate(context, appWidgetManager, appWidgetIds);
for (int i = 0; i < appWidgetIds.length; i++) {
int appWidgetId = appWidgetIds[i];
然后在 onUpdate 内部,我首先使用 Time 方法将小时和分钟作为字符串:
Time today = new Time(Time.getCurrentTimezone());
today.setToNow();
int hour = today.hour;
String hh = Integer.toString(hour);
int minute = today.minute;
String mm = ":" + Integer.toString(minute);
然后我用位图在两个图像视图中显示了这两个字符串:
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
views.setImageViewBitmap(R.id.imageView1, getFontBitmap(context, hh, Color.WHITE, 70));
views.setImageViewBitmap(R.id.imageView2, getFontBitmap1(context, mm, Color.WHITE, 70));
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
这是我在清单中的接收器:
<receiver android:name="widget">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/widget"/>
这是我在 res/xml 中的 widget.xml:
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="288dp"
android:minHeight="144dp"
android:updatePeriodMillis="10000"
android:initialLayout="@layout/widget_layout">
</appwidget-provider>
所以有什么帮助吗?
提前致谢