2012-08-04 16 views
5

私はアプリウィジェットを実装していますが、RemoteViewsをすべて再構築せずにウィジェットレイアウトで1つのビューのプロパティを変更できますXMLなどの読み込みが必要な場合や、状況によっては必要ない場合があります。「現在のウィジェットレイアウトで特定のIDで識別されるビューでプロパティXを更新する」という方法はありますか?私は、AppWidgetManagerクラスにpartiallyUpdateAppWidgetメソッドがあることを見てきましたが、この目的のために使用されているかどうか理解できていません。また、どのように使用しなければならないのか理解できません。すべてのRemoteViewを再構築せずにアプリウィジェット内のビューを部分的に更新する方法

答えて

3

はい、AppWidgetManagerクラスのpartiallyUpdateAppWidgeメソッドを使用できます。例として 、あなたがウィジェット内のテキストビューを更新する場合:

AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context); 
rv = new RemoteViews(context.getPackageName(), R.layout.widgetlayout); 
rv.setTextViewText(R.id.ofTextViewInWidgetLayoutXML, "Hello World"); 
appWidgetManager.partiallyUpdateAppWidget(appWidgetIds, rv); 

は参考: Just update a widget RemoteViews instead of completly creating a new one?

関連する問題