Переместите несколько элементов в один с помощью FragmentTransaction SharedElement.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Переместите несколько элементов в один с помощью FragmentTransaction SharedElement.

Сообщение Anonymous »


Я использую компонент навигации Android Jetpack и хочу преобразовать несколько элементов в один при переходе между фрагментами с помощью FragmentTransaction SharedElement. Пример изображения: пример перехода

Я программно создаю определенное количество представлений (это число может варьироваться), добавляю их в контейнер (LinearLayout) и присоединяю onClickListener к каждому представлению.

При нажатии я присваиваю каждому представлению имя транзакции и добавляю его в раздел «Дополнительно»:

` частный развлекательный факторAnalysisOnClick(factorData: FactorData) {

val extrasBuilder = FragmentNavigator.Extras.Builder() привязка.факторАнализКонтейнер.дети.форЕач { избранное -> fav.transitionName = FAV_TRANSITION_NAME extrasBuilder.addSharedElement(fav, "factorAnalysisView") } extrasBuilder.addSharedElement(binding.actionBar, "statisticByFactorActionBar") extrasBuilder.addSharedElement(binding.title,"title") val extras = extrasBuilder.build() findNavController().navigate( R.id.action_statistics_to_statistics_by_factor, BundleOf( Пара (KEY_FACTOR_DATA, FactorData) ), нулевой, дополнительные услуги ) }` И я получаю ошибку: java.lang.IllegalArgumentException: общий элемент с целевым именем «factorAnalysisView» уже добавлен в транзакцию. в androidx.fragment.app.FragmentTransaction.addSharedElement(FragmentTransaction.java:679) в androidx.navigation.fragment.FragmentNavigator.navigate(FragmentNavigator.kt:435) в androidx.navigation.fragment.FragmentNavigator.navigate(FragmentNavigator.kt:398) ) в androidx.navigation.NavController.navigateInternal(NavController.kt:266) в androidx.navigation.NavController.navigate(NavController.kt:1867) в androidx.navigation.NavController.navigate(NavController.kt:1692) в site.pnpl .mira.ui.statistic.fragments.StatisticsFragment.factorAnalysisOnClick(StatisticsFragment.kt:171)

Я понимаю, что он имеет в виду, возможно, есть какой-то способ это реализовать? А может быть, есть другие способы добиться эффекта «сложенного» просмотра в момент перехода?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»