3
我正在爲android開發音樂播放器應用程序。當一首歌完成時,我發送一個廣播,並且在一個活動中,我想相應地改變播放/暫停圖標。從活動訪問Recyclerview查看者
活動接收下一首歌曲的播放,但我不知道如何更新來自活動的行。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_now_playing);
mStaggerGridLayoutManager = new StaggeredGridLayoutManager(1, StaggeredGridLayoutManager.VERTICAL);
mRecyclerView = (RecyclerView) findViewById(R.id.now_playing_songs_list);
mRecyclerView.setLayoutManager(mStaggerGridLayoutManager);
mAdapter = new ListAdapter(this, mSongList)
mRecyclerView.setAdapter(mAdapter);
mReciever = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals(MusicService.SONG_FINISHED)) {
//WANT TO CHANGE ROW ICON HERE
}
}
};
如何在活動中訪問在mAdapter中定義的查看者?
在ListAdapter類中創建一個公共方法來處理此操作,並從Activity的onReceive()中調用該方法。 –
很可能,您不想訪問viewHolder。而是要修改適配器中的某個數據條目,然後通知適配器該條目已更改。 – gMale