Я новичок в android, разрабатываю , и я нахожусь на своем пути разработки моего первого приложения с использованием архитектуры MVVM Все работает правильно, и я закончил приложение, и оно готово к используйте единственную проблему с ним - это одно из его действий занимает слишком много времени для отображения , а пользовательский интерфейс занимает от 4 до 5 секунд - для ответов, и это заставляет меня смущаться развертывать его действие тяжело загружать и взаимодействовать с - это основное действие в приложении, и большинство приложений посвящено этому
Я сделал все, что нужно, чтобы этот класс действий выполнял меньше работы, и дал остальное работы (логика и тому подобное) для класса модели представления, но он все еще тяжел и взаимодействие настолько тяжелое
Я искал в net и на этом веб-сайте, и я нашел несколько советов
Один из советов, которые я обнаружил, заключается в том, чтобы класс активности содержал меньше кода и меньше логики и то, что я уже сделал с MVVM
Другой совет касается макета xml file
. Они сказали, что для построения линейного и сеточного макета требуется так много времени, чтобы масштабировать дочерний макет внутри него, и он может блокировать пользовательский интерфейс
. это то, что меня не заботило, когда я впервые создавал и проектировал представления , поэтому я много использовал «include», и я использовал его с большим количеством линейного и сеточного макетов в качестве дочерних представлений Кроме того что я использовал ограничение соответствия в некотором макете ограничения
Это небольшая диаграмма, которая показывает, как я построил свой пользовательский интерфейс
, диаграмма показывает, как я проектировал пользовательский интерфейс
один из макетов xml показывает, как я использовал тег включения
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:columnCount="1"
android:rowCount="6">
<include
android:id="@+id/first"
layout="@layout/day_node_calendar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_rowWeight="1"
android:layout_gravity="center"></include>
<include
android:id="@+id/second"
layout="@layout/day_node_calendar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_rowWeight="1"
android:layout_gravity="center"></include>
<include
android:id="@+id/third"
layout="@layout/day_node_calendar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_rowWeight="1"
android:layout_gravity="center"></include>
<include
android:id="@+id/fourth"
layout="@layout/day_node_calendar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_rowWeight="1"
android:layout_gravity="center"></include>
<include
android:id="@+id/fifth"
layout="@layout/day_node_calendar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_rowWeight="1"
android:layout_gravity="center"></include>
<include
android:id="@+id/sixth"
layout="@layout/day_node_calendar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_rowWeight="1"
android:layout_gravity="center"></include>
Решение, которое я хочу попробовать, состоит в том, чтобы изменить макеты с линейного и сеточного в Относительный и ограниченный макет Или используйте пользовательское представление для построения каждого узла, затем включите его в основной макет или просто сократите использование линейного макета. Поэтому мой вопрос в том, какое из решений будет мне полезно ell И если у вас есть какое-то предложение, я буду так рад, если вы скажете мне и приведете меня к лучшему решению