У меня есть три настройки интерфейса вкладки с помощью ViewPager. На третьей вкладке у меня есть CardView, который может расширять/убирать onclick, чтобы показать больше информации. Внутри CardView находится RecyclerView, который накачивается множеством данных.Android Preload Recycleview Содержание
В первый раз, когда приложение открывается и открывается CardView, анимация расширения довольно лаги, но впоследствии ее можно развернуть/оттянуть. Данные RecyclerView также могут быть обновлены без проблем.
Есть ли способ как-то загружать/кэшировать данные при открытии приложения, так что lagg не возникает.
Извините, если вопрос неудовлетворительный, только начинайте разработку Android. Благодаря
Layout на третьей вкладке:
<android.support.v7.widget.CardView
android:id="@+id/SF_frame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp">
<LinearLayout
android:id="@+id/SF_wrapper"
android:layout_width="fill_parent"
android:layout_height="80dp"
android:orientation="vertical">
<android.support.v7.widget.RecyclerView
android:id="@+id/SF_list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v7.widget.RecyclerView>
</LinearLayout>
</android.support.v7.widget.CardView>
Данные, которые используются для надувания recyclerView список объектов каждый с 2 поплавковыми переменными. Примерно длина ~ 50.
XML-используется для накачивания каждого элемента:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4sp"
android:orientation="horizontal">
<RelativeLayout
android:layout_width="0dp"
android:layout_height="36sp"
android:layout_weight="1">
<TextView
android:id="@+id/value_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="lorem"
android:textSize="8sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="0dp"
android:layout_height="36sp"
android:layout_weight="1">
<TextView
android:id="@+id/value_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="ipsom"
android:textSize="8sp" />
</RelativeLayout>
</LinearLayout>
Код для расширения/Отводом cardView просто анимированными изменений высоты SF_frame выявить более элементы RecyclerView, и именно это первое показывает что лаг ,
Какие данные и как они были получены? Если есть изображения (я думаю, они могут потребовать много процессорного времени для новичков), попробуйте использовать некоторую библиотеку с асинхронной загрузкой (сначала нажмите try http: //square.github.io/picasso /) – VizGhar
Привет, спасибо за ответ, информация - всего лишь куча чисел, которые вычисляются в другом funciton. Я думаю, что lagg не столько извлекает данные, сколько просто отображает кучу скрытых просмотров в первый раз –
Можете ли вы добавить свой Cardview xml в первую очередь? то мы должны знать, где проблема может быть ... Я не думаю, что предварительная загрузка данных является разумным способом. Только если есть действительно огромные данные. – VizGhar