Как программно заставить нажатие на UIImageView сделать что-то на iPhone? - PullRequest
4 голосов
/ 11 марта 2009

Я программно добавил UIImageView. Как заставить его отправлять сообщение на мой контроллер, когда пользователи щелкают по нему, отправляя себя в качестве единственного параметра?

Ответы [ 4 ]

11 голосов
/ 12 марта 2009

Я бы не использовал UIImageView, если бы не было другой веской причины. Я бы просто использовал пользовательский UIButton и использовал бы UIImage в качестве фона.

7 голосов
/ 11 марта 2009
  1. Создайте новый класс, расширяющий UIImageView, и используйте его.
  2. В вашем классе переопределите события касания - touchSbegan, touchesEnded и / или touchsMoved в зависимости от ситуации
  3. Из этих методов перезвоните методу на контроллере.
3 голосов
/ 12 марта 2009

Я бы просто поместил пользовательскую кнопку поверх вида UIImage и использовал ее обычным образом - кнопки с пользовательским стилем невидимы и поэтому не затеняют изображение. Это также отличный способ превратить области текста в интерактивные области.

Или вы можете назначить пользовательское изображение в качестве графического фона для кнопки.

2 голосов
/ 24 мая 2011

просто поместите кнопку над изображением с атрибутом Alpha, установленным на 0,10 или менее. Вы можете зафиксировать событие нажатия кнопки, но почти не можете его увидеть.

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