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