私のアプリウィジェットはいくつかのモードで機能します。これらのモードごとに、を作成しましたRemoteViewsFactory
。モードを切り替えるために、インテントをに送信しますAppWidgetProvider
。それを受け取ったら、を作成して'sRemoteViews
に渡します。コレクションビューのを設定するには、 ' :を呼び出します。AppWidgetManager
updateAppWidget()
RemoteViewsFactory
RemoteViews
setRemoteAdapter()
rv.setRemoteAdapter(appWidgetId, R.id.widget_view_flipper, intent);
R.id.widget_view_flipper
コレクションビューでintent
ありRemoteViewsService
、適切なファクトリを構築するためのものです。
編集:最初に説明した問題を理解したので、質問を編集しました。これで、ファクトリを変更するgetViewAt()
と、変更後に新しいファクトリのが呼び出されますが、コレクションビューの要素は更新されません。それはどのように起こりますか?
今のところ、私が思いついたのは、工場での交換後、遅れてAppWidgetManagerのnotifyAppWidgetViewDataChangedを呼び出すことができるということだけです。これにより、ビュー内の要素が醜い点滅で更新されます。