Sobes.tech
Junior — Middle

Jak zobrazit chybu ve View na základě dat přicházejících z LiveData?

sobes.tech AI

Odpověď od AI

Chcete-li zobrazit chybu ve View na základě dat z LiveData, obvykle se v ViewModelu vytvoří samostatný objekt LiveData pro chyby. View se přihlásí k tomuto LiveData a při změně dat zobrazí chybovou zprávu.

Příklad:

// Ve ViewModelu
private val _error = MutableLiveData<String?>()
val error: LiveData<String?> = _error

fun loadData() {
    try {
        // načtení dat
    } catch (e: Exception) {
        _error.value = e.message
    }
}

// V Activity nebo Fragmentu
viewModel.error.observe(viewLifecycleOwner) { errorMessage ->
    if (errorMessage != null) {
        // zobrazit chybu, například Toast nebo TextView
        Toast.makeText(context, errorMessage, Toast.LENGTH_LONG).show()
    }
}

Tento přístup odděluje logiku zpracování chyb od UI a umožňuje snadné řízení zobrazení chyb.