Ich teste ein einfaches Widget in Android und benutze Alarme, um ein TextView in regelmäßigen Abständen zu aktualisieren. Das Problem ist, dass ich in der BroadcastReceiver-Klasse nicht auf das TextView-Element zugreifen kann, das nach Ablauf des Alarms aktualisiert werden soll. Die Klasse wird richtig aufgerufen, weil der Toast, den ich dort hingelegt habe, die entsprechende Nachricht gibt. Der folgende Code stammt aus der Klasse, in der ich das Widget konfiguriere und die Timer einstelle.So greifen Sie auf ein TextView-Element in einem BroadcastReceiver zu
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
Intent intent = getIntent();
Bundle extras = intent.getExtras();
if(extras != null){
mWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID);
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(WidgetConfigure.this);
RemoteViews views = new RemoteViews(WidgetConfigure.this.getPackageName(), R.layout.widget_layout);
views.setTextViewText(R.id.quote, "Widget Loaded From Activity");
appWidgetManager.updateAppWidget(mWidgetId, views);
setTimer(); //set the timers...
setResult();// set the result...
}
}
Jetzt möchte ich die gleiche TextView aktualisieren, wenn der BroadCastReceiver aufgerufen wird, nachdem der Timer abläuft. Ich habe den Code versucht, der im BeispielAppWidget-Beispiel zur Verfügung gestellt wurde, das in android API-Demos zur Verfügung gestellt wird und das nicht ausarbeitet. Wie kann ich den gewünschten Text einstellen?
ich möchte die gleiche Tätigkeit nennen, die oben erwähnt wird (was auch den Alarm setzt), aber eine andere Methode darin einen anderen Text in der Textview-Element zu setzen. SO muss ich wissen, wie ich diese Aktivität vom BroadcastReceiver aufrufen kann. – ric03uec
chek mein Update. Wiederum ist eine Aktivität und ein Rundfunkempfänger unabhängig. Wenn Ihr Empfänger angerufen wurde, ist die Aktivität möglicherweise nicht vorhanden. Sogar die Übertragung wird in der Aktivität erstellt. –
thanx a lot..that es gelöst – ric03uec