Java 随机化LiveData<;列表<;名称>;
如何在Java 随机化LiveData<;列表<;名称>;,java,android,random,android-livedata,Java,Android,Random,Android Livedata,如何在ViewModel中随机化LiveData,并在我的RecyclerView中显示结果?我在想我可以做一个 Collection.shuffle(Arrays.asList(myList)) 但我不相信这会改变LiveDatalist中对象的顺序 我的碎片 .... public void RandomizeListOrder() { mMainActivityViewModel.setRandomOrder(); adapter.notifyDataSetChanged
ViewModel
中随机化LiveData
,并在我的RecyclerView
中显示结果?我在想我可以做一个
Collection.shuffle(Arrays.asList(myList))
但我不相信这会改变LiveDatalist中对象的顺序
我的碎片
....
public void RandomizeListOrder() {
mMainActivityViewModel.setRandomOrder();
adapter.notifyDataSetChanged();
}
视图模型
private LiveData<List<StudentEntity>> mStudentList
public void setRandomOrder() {
Collection.shuffle(Arrays.asList(mStudentList));
}
private LiveData mStudentList
公共命令(){
Collection.shuffle(Arrays.asList(mStudentList));
}
您可以使用livedata转换操作livedata
val transformedLiveData = Transformations.map(
yourActualLiveData) { //Shuffle logic here }
您可以使用livedata转换操作livedata
val transformedLiveData = Transformations.map(
yourActualLiveData) { //Shuffle logic here }
如果您对Kotlin解决方案感兴趣,可以这样做:
val mStudentList = MutableLiveData<List<StudentEntity>>()
fun setRandomOrder() {
mStudentList.value?.let { students ->
mStudentList.value = students.shuffled()
}
}
val mStudentList=MutableLiveData()
fun setrandorder(){
mStudentList.value?.let{students->
mStudentList.value=students.shuffled()
}
}
如果您对Kotlin解决方案感兴趣,可以这样做:
val mStudentList = MutableLiveData<List<StudentEntity>>()
fun setRandomOrder() {
mStudentList.value?.let { students ->
mStudentList.value = students.shuffled()
}
}
val mStudentList=MutableLiveData()
fun setrandorder(){
mStudentList.value?.let{students->
mStudentList.value=students.shuffled()
}
}