Что делать для версий API без View.setX? - PullRequest
2 голосов
/ 08 февраля 2012

Итак, к моему большому огорчению, я обнаружил при тестировании на более раннем устройстве, что до версии 11 API, класс View не имеет ни setAlpha, ни setX методов. Может кто-нибудь предложить альтернативу? В настоящее время я перемещаю представление, обновляя его местоположение X и постепенно увеличивая его в зависимости от взаимодействия с пользователем.

1 Ответ

0 голосов
/ 08 февраля 2012

Вы можете использовать стандарт Animation для реализации такой программной логики, например, AlphaAnimation и TranslateAnimation для перемещения вашего View.Но также следует иметь в виду, что исходная позиция View в родительском макете не изменилась (перерисовывается только пикселей ).Это означает, что когда пользователь нажмет на новое изображение View, это View не получит событие, так как оно Rect останется в старой позиции.

Вы можете переместить прямоугольник View sпосле окончания анимации, используя метод View.layout() с 4 переданными туда параметрами позиционирования, но в этом случае вам следует подумать о природе макета, потому что, например, если вы работаете с LinearLayout и измените позицию этого элемента, вызвав *Метод 1016 *, при следующем изменении размера элемента пользовательского интерфейса будет вызываться метод reaqestLayout(), а анимированный View вернется в исходное положение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...