0
毎分sdcardにビットマップをダウンロードして画面に表示するウィジェットを作成する必要があります。私はしようとしましたビットマップをダウンロードして印刷するアンドロイドウィジェットは動作しません
private class MyTime extends TimerTask
しかし、動作しません。ウィジェットは更新されません:( 画像の合計は30Kです。これで私は助けてくれますか?コードのサンプルが必要です。ウィジェットが動作するためのコードをどこに置くことができますか?
public class MyWidget extends AppWidgetProvider {
public int tt=0;
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
if(tt==0) {
Timer timer = new Timer();
timer.scheduleAtFixedRate(new MyTime(context, appWidgetManager), 1, 10000);
tt=1;
}
}
private class MyTime extends TimerTask {
RemoteViews remoteViews;
AppWidgetManager appWidgetManager;
long t=0,lastUpdate=0;
ComponentName thisWidget;
public MyTime(Context context, AppWidgetManager appWidgetManager) {
this.appWidgetManager = appWidgetManager;
remoteViews = new RemoteViews(context.getPackageName(), R.layout.main);
thisWidget = new ComponentName(context, MyWidget.class);
}
@Override
public void run() {
DateFormat dateFormat = new SimpleDateFormat("dd/MM HH:mm");
//get current date time with Date()
Date date = new Date();
remoteViews.setTextViewText(R.id.Clock,dateFormat.format(date));
appWidgetManager.updateAppWidget(thisWidget, remoteViews);
if(t==0 || t + 100000<=System.currentTimeMillis()) {
checkUpdate();
display();
t=System.currentTimeMillis();
}
}
「更新しない」とは、UIが変更されていないか、エラーが発生して失敗するか、何か? –
main.xml –
の最初のXMLが残っていて、コードが実行されていることを確認したら、UIの状態を変更する必要がありますか? –