feat: 修复页面onStart没有刷新数据 https://jira.shanqu.cc/browse/GHZSCY-7987
This commit is contained in:
@ -109,7 +109,7 @@ class VDownloadManagerFragment :
|
||||
ToastUtils.showToast(it.message ?: "")
|
||||
}
|
||||
.collectLatest {
|
||||
onLoadRefresh()
|
||||
refreshApks(it.map { it.packageName })
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -125,9 +125,9 @@ class VDownloadManagerFragment :
|
||||
|
||||
override fun isAutomaticLoad(): Boolean = false
|
||||
|
||||
override fun onLoadRefresh() {
|
||||
private fun refreshApks(apks: List<String>) {
|
||||
mReuseNoData?.visibility = View.GONE
|
||||
mViewModel.refresh()
|
||||
mViewModel.refresh(apks)
|
||||
}
|
||||
|
||||
override fun onDarkModeChanged() {
|
||||
|
||||
@ -29,19 +29,19 @@ class VDownloadManagerViewModel(application: Application) :
|
||||
var type = ""
|
||||
var isFromHomeRecent = false
|
||||
|
||||
var loadPublishSubject: PublishSubject<LoadType> = PublishSubject.create()
|
||||
private var loadPublishSubject: PublishSubject<List<String>> = PublishSubject.create()
|
||||
|
||||
val disposable: Disposable = loadPublishSubject.debounce(300, TimeUnit.MILLISECONDS)
|
||||
.distinctUntilChanged()
|
||||
.distinctUntilChanged { p1, p2 -> p1.sorted() == p2.sorted() }
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe {
|
||||
load(it)
|
||||
load(LoadType.REFRESH)
|
||||
}
|
||||
|
||||
val vGames = VHelper.vGameDao.getAllGames()
|
||||
|
||||
fun refresh() {
|
||||
loadPublishSubject.onNext(LoadType.REFRESH)
|
||||
fun refresh(apks: List<String>) {
|
||||
loadPublishSubject.onNext(apks)
|
||||
}
|
||||
|
||||
override fun mergeResultLiveData() {
|
||||
|
||||
@ -97,12 +97,6 @@ class VDownloadManagerWrapperFragment : BaseLazyTabFragment() {
|
||||
}
|
||||
|
||||
fun onNewIntent(intent: Intent?) {
|
||||
childFragmentManager.fragments.forEach {
|
||||
if (it.isAdded && it is VDownloadManagerFragment) {
|
||||
it.onLoadRefresh()
|
||||
}
|
||||
}
|
||||
|
||||
intent?.getIntExtra(EntranceConsts.KEY_POSITION, 0)?.let {
|
||||
mViewPager.post { mViewPager.currentItem = it }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user