Closed sadr0b0t closed 1 year ago
Для интеграции с ViewPager2 TabLayout нужно тоже было обновить. Искал, где бы было написано, какая у него самая свежая версия (ахуенная космическая АндроидСтудия их показыать в build.gradle, например, по автокомплиту, не умеет - нужно лесть в интернеты или гадать).
Где найти информацию по установке и обновлении библиотеки, в которой определен этот TabLayout, - это тот еще квест долбаный.
на странице с документацией https://developer.android.com/reference/com/google/android/material/tabs/TabLayout слева пэкэдж com.google.android.material, но это везде ссылки на javadoc для конкретных классов, нельзя кликнуть так, чтобы попасть в корень с описанием этой библиотеки.
Ок, кликаю наверху Android Developers > Docs > Reference, на Reference https://developer.android.com/reference
Там среди прочих ссылка Other Libraries > Material Components > User Guide https://developer.android.com/develop/ui/views/theming/look-and-feel
Там где-то в тексте ссылка на material design support library https://developer.android.com/topic/libraries/support-library/features#material-design , которая вся deprecated
На плашке "deprecated" написано, что рекомендуют переходить на проект Jetpack без уточнений, где там искать замену materialui
На сайте Jetpack https://developer.android.com/jetpack сука идём в раздел Libraries (я так решил) https://developer.android.com/jetpack/androidx/explorer
и там внизу списка находим Material Design Components https://m2.material.io/develop/android/ , которая, бля, ведет еще на новый отдельный сайт, где есть упоминание компонентов MaterialUI и Android https://m2.material.io/develop/android
И вот там на заглавной странице, сука, можно найти ссылку Get started with MDC for Android (не нужно даже мотать вниз! эргономика!) https://m2.material.io/develop/android/docs/getting-started
и там есть инструкция, как этот materialui в новой инкарнации в проект добавить и обновить. Рекомендуют номер последней версии смотреть в репозитории maven https://maven.google.com/web/index.html#com.google.android.material:material
Visit Google's Maven Repository or MVN Repository to find the latest version of the library.
Ну и там не врут - последнюю версию, действительно, видно (на текущий момент самая свежая 1.8, получилось обновиться максимум до 1.4, т.к. на 1.5 уже не компилируется с текущими настройками).
Чтобы посмотреть документацию, вкладку "Components" на этом же сайте (на наверху, ни слева) кликать не нужно - там будет документация на JavaScript+node.
Ссылка на Javadoc внизу страницы "Getting started" - Class documentation (среди прочих), ведёт на тот же старый developer.android.com https://developer.android.com/reference/com/google/android/material/classes
сука, сука, сука
все актуальные ссылки: https://m2.material.io/develop/android/docs/getting-started https://maven.google.com/web/index.html#com.google.android.material:material https://github.com/material-components/material-components-android https://developer.android.com/reference/com/google/android/material/tabs/TabLayout
Во-первых, androidx.viewpager.widget.ViewPager не развивается, а предназначенный для него androidx.fragment.app.FragmentPagerAdapter из типовых примеров уже deprecated
https://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html https://developer.android.com/jetpack/androidx/releases/viewpager2 https://developer.android.com/develop/ui/views/animations/vp2-migration#java
Во-вторых, словил ровно вот этот глюк с радио-кнопками и вторым табом (если таб первый в списке, то баг не воспроизводится): https://stackoverflow.com/questions/43248414/setting-radiobutton-setchecked-with-multiple-fragments
Рабочих решений в коментах нет, поэтому вариант попробовать обновить TabLayout и ViewPager, а значит и повод сразу заменить ViewPager на ViewPager2 (спойлер: проблема, действительно, пролечилась, не ясно только, обновлением meterialui:TabLaoyout или переездом на ViewPager2, сейчас лень проверять точно).
TabLayout+ViewPager2 https://stackoverflow.com/questions/55372259/how-to-use-tablayout-with-viewpager2-in-android https://developer.android.com/develop/ui/views/animations/vp2-migration#tablayout https://developer.android.com/guide/navigation/navigation-swipe-view-2