Есть три массива 1. entriesForAdd(Здесь все финансовые операции на поступление средств(первая подпись на LiveData)) 2. entriesForExpense(Здесь все финансовые операции с тратой средств(вторая подпись на LiveData)) 3. result (сюда должны записываться два элмента -> сумма всех доходов и расходов (entriesForAdd.sum и entriesForExpense.sum ) И потом этот массив используется для отображения в самой диаграммы pieChart (PieDataSet(result, "Операция") где 1 параметр массив с данными, а второй параметр - название самой диаграммы)) И мне нужно как раз реагировать на изменениях в этих списках и отрисовывать заново диаграмму с новыми данными
PieDataSet(result, "Операция") - это создание объекта класса PieDataSet, который после создания никак не используется. Т.е. он делает ничего. По крайней мере, код выглядит именно так. Может, он у вас там хитрый синглтон или типа того и всё работает, я не знаю :)
Ну, массив пустой, а к нему пытаются обратиться. В общем, ваши данные до PieChart не доехали.
Я вот и пытаюсь это решить Чтобы сначала брались данные из ViewModel, а потом уже на основании их другой массив формировался и он доезжал до PieChart
Я бы сначала сделал так, чтобы оно работало с данными по умолчанию и не падало. А потом бы обвешивал лайв датой и т.п.
Обсуждают сегодня