2015-09-28 3 views
0

В Android:Как удалить родительский вид - Android

Учитывая Вид из onTouchEvent, как я могу удалить View и его родителей?

У меня есть LinearLayout, в котором у меня есть вид. При нажатии на представление создается подмакет внутри LinearLayout. Этот подмакет нуждается в собственных onTouchListeners, поэтому я не могу подключить onTouchListener к родительскому LinearLayout, потому что это всегда будет блокировать onTouchListeners для моего подмакета.

Поэтому мне нужно средство для удаления родительского макета с учетом его дочернего макета. Я уже могу удалить дочерние макеты у своих родителей.

ответ

10

Если вы знаете, как удалить дочерние представления родителя, придерживайтесь того, что вы знаете;) Идея состоит в том, чтобы поднять положение в дереве представлений, где вы можете удалить родительское представление в качестве дочернего. Как ты это делаешь? Легко, получите представление о своём представлении с бабушкой и сводным представлением от своего дедушки.

((ViewGroup)view.getParent().getParent()).removeView((ViewGroup)view.getParent()); 
+0

Это сработало отлично! Благодарю. Примечание: я потерял счетчик моего getParent() и там обнаружил, что ваш код работает с одним редактированием другого передела на ViewGroup ((ViewGroup) v.getParent(). GetParent()). RemoveView ((ViewGroup) v.getParent()); –

+0

Я рад, что это сработало для вас! Я обновил свой ответ, чтобы отразить ваши изменения. – thomaspsk

+0

@thomaspsk. Я хочу добавить изображения в дневное время на мой линееклайт, который я сделал. позже я удаляю некоторые изображения из макета. то я хочу восстановить его в своем месте, откуда я удалил. означает, что я хочу добавить изображения, не удаляя родителя ребенка, можете ли вы мне помочь? – PriyankaChauhan

Смежные вопросы