@Fangahra81

Как програмно поменять у компонента например button родителя LinearLayout1 на LinearLayout2?

Есть программа с двумя LinearLayout1 и LinearLayout2
есть событие кнопки. Нужно по событию чтобы button менял родителя LinearLayout1 на LinearLayout2.
Пересоздать button не желательно. Хотелось бы текущий перенести.
  • Вопрос задан
  • 193 просмотра
Пригласить эксперта
Ответы на вопрос 1
UDZHEN
@UDZHEN
Android Java
Возможно командой get получить все настройки кнопки, удалить программно, и программно зная настройки создать новую кнопку в нужном layout. Проще было бы сделать эту кнопку фрагментом и ставить и удалять ее где надо. Можно написать кнопку в методе и в зависимости от параметров вызывать метод который будет решать на какой лайаут ставить кнопку. LayoutInflater – это класс, который умеет из содержимого layout-файла создать View-элемент. Метод который это делает называется inflate. Есть несколько реализаций этого метода с различными параметрами. Но все они используют друг друга и результат их выполнения один – View. Больше тут https://developer.android.com/reference/android/vi...
Подумал, возможно еще так можно TextView textView2 = new TextView();textView2 = textVew1; Тут обязательно ту кнопку удаляем, и делаем это myLayout.add(textView2); Удалять надо чтобы ошибку с одинаковыми id не возникла, возможно это лучшее решение
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы