Здравствуйте, помогите пожалуйста.
Проблема заклчается в том, объект view, двигается по экрану благодаря TranslateAnimation, я на него повесил OnClickListener, a он не работает. Получается, что для программы, он находится всегда на одном месте, и когда нажимаешь на то пустое место, он естественно срабатывает. Можна ли что то сделать?
Если я вас правильно понял, то вот тут это обсуждали.
В ответе, который отмечен верным говорится
Да, это нормальное состояние, потому что анимации повторно меняют пиксели, но координаты остаются теми же
В ответе предлагается использовать layout()
у view
в конце анимации. Так делать нельзя, так как если, например, перевернуть устройство, то view
будет там, где был с самого начала. В комментарие ниже об этом и говорится, в нем же предлагается использовать LayoutParams
.
Вам надо чтобы слушатель работал когда анимация закончится или когда анимация работает? Если первое, то вам надо повесить на анимацию слушатель и в onAnimationEnd
менять у view
LayoutParams
. Если второе, то скорее всего вам нужна циклическая смена LayoutParams
, и причем в отдельном потоке.
Если у вас view
перемещается в известное вам место (траектория прописана, она одна) то лучше в двух местах создать одинаковые view
, и в конце анимации по очереди их делать невидимыми, Тоесть например кнопка сверху. Нужно, чтобы она была внизу. Вы нижнюю делаете невидимой, анимируете первую и когда она анимация закончится делаете невидимой первую, а вторую наоборот - видимой
Еще советую посмотреть в сторону ViewPropertyAnimator
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Двумерный массив состоит из String "X" и String "O"Я по нему пробегаюсь и ищу кол-во X и O
Здравствуйте, разрабатываю приложение, где есть кабинет пользователей со своими паролями, именами и временем открытия сменыНеобходимо по прохождению...
Всем приветВообщем, я пытаюсь в данный момент сделать что то типа файлового менеджера для Android в очень простом виде