Как сделать так, чтобы пользовательский UIButton реагировал на касания только непрозрачных частей? - PullRequest
0 голосов
/ 31 января 2011

У меня есть UIButton, тип которого является пользовательским и представлен в виде файла png, часть которого прозрачна.

Естественно, я хочу, чтобы моя кнопка активировала событие touchUpInside, если и только если не прозрачный(= видимая) часть повернута.Но я также получаю событие, когда касаюсь прозрачной части, что недопустимо.

Как я могу заставить мою кнопку знать только ее видимую часть?

1 Ответ

0 голосов
/ 31 января 2011

Раздень свое изображение на две части.Тот, который является кнопкой (clickable-part) и тот, который является фоном.Установите изображения кнопок только для интерактивной области.Поместите UIButton поверх UIImageView с фоном на нем.Вы можете наследовать от UIButton, чтобы создать свой собственный элемент управления, который является UIButtonWithBackground, как описано выше, а затем переопределить функции состояния, чтобы изменить фоновое состояние, когда кнопка также меняет состояние.

...