2017-08-10 14 views
0

私はウィジェットの中でrecyclerviewを使用したいと思います(GMailウィジェットのように)。私は、RecyclerAdapterクラス、recycleritemレイアウト、およびルートレイアウトとしてのLinearLayoutを使ったウィジェットレイアウトを作成しました。すべてうまくいくようですが、リモートビューが利用できるウィジェットからレイアウトにアクセスする方法はわかりません。ここにコードがあります。Android - ウィジェット内のRecyclerViewの使用

static void updateAppWidget(Context context, AppWidgetManager appWidgetManager, 
           int appWidgetId) { 

     // Construct the RemoteViews object 
     RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.schedule_today_widget); 

     ScheduleActivity scheduleActivity = new ScheduleActivity(); 
     Calendar calendar = Calendar.getInstance(); 
     int day = calendar.get(Calendar.DAY_OF_WEEK); 
     int week = scheduleActivity.currentWeek(context); 
     ArrayList<Lesson> mDataSet = scheduleActivity.getDataSet(week, day, context); 

     mRecyclerView = (RecyclerView) views ... 

     // Instruct the widget manager to update the widget 
     appWidgetManager.updateAppWidget(appWidgetId, views); 
    } 

ありがとうございます。

==編集==
ウィジェットの更新メソッドからrecyclerviewとrecycleradapterにアクセスしたいと思います。定期的な活動で、私はこのようにそれを行っていると思います:

mRecyclerView = (RecyclerView) findViewById(R.id.schedule_monday_card); 
     mRecyclerView.setHasFixedSize(true); 
    mLayoutManager = new LinearLayoutManager(getContext()); 

    mRecyclerView.setLayoutManager(mLayoutManager); 

    mAdapter = new ScheduleRecyclerAdapter(myDatasetMonday, context); 
    mRecyclerView.setAdapter(mAdapter); 

しかし、私は私がfindViewById()か何かを使用することはできません。この方法原因コンテキストのこの内部を行うことはできません。

==編集==

さて、今度はListViewを使用してください。しかし、私はまだonUpdateメソッドからウィジェットのレイアウトでListViewにアクセスする方法を知らないのですか?

+0

私の意見ではあなたの質問はかなり曖昧です。どんなレイアウトにアクセスしたいですか? –

答えて

2

このApp Widgets documentationによれば、リモートビューを使用する場合、RecyclerViewはサポートされているビューに含まれていません。代わりにListViewを使うべきだと確信しています.Gmailや他の同様のウィジェットはそうしています。

+0

ああ、今私は参照してください。 ListViewを完全に忘れてしまった。ありがとうございました! – Cakeee

+0

さて、私はウィジェットのレイアウトでListViewにアクセスする方法を知りません:D – Cakeee

+0

このスレッドを見てくださいhttps://stackoverflow.com/questions/6093256/implement-listview-in-android-widgets – mis3k

関連する問題