инициализация представления ресайклера с помещением, занимающим слишком много времени, и инициализация вида ресайклера, блокирующая щелчок по другим виджетам представления - PullRequest
0 голосов
/ 19 июня 2020

Я инициализирую recyclerView, используя локальную базу данных комнаты, но это занимает слишком много времени. Представление ресайклера находится в пейджере представлений, и его загрузка занимает много времени. Он также блокирует страницу и не позволяет пользователю щелкнуть другие виджеты представления во время загрузки. Есть ли способ избежать этого, чтобы заблокировать приложение и ускорить загрузку?

cashflows.apply {
    layoutManager = LinearLayoutManager(requireContext())
    setHasFixedSize(true)
    itemsOM = mutableListOf<TransactionItem>()
    if ( viewModel.omTransactions.size>0){
        cashflows.visibility=View.VISIBLE
    } else {
        cashflows.visibility=View.GONE
        text_placeholder.text=resources.getString(R.string.no_cashflow)
    }
    // Make sure we cancel the previous job before creating a new one
    lifecycleScope.launch {
        viewModel.omTransactions.forEach {
            if (it.transaction?.transactionService != ENUMSERVICE.SOLDERESTANTORANGE) {
                itemsOM.add(TransactionItem(custumSMS = it, home = true))
            }
        }
        adapter = GroupAdapter<ViewHolder>().apply {
            add(Section(itemsOM))
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...