2015-11-02 3 views
1

Я создаю обычай UIView. Мне интересно, как я могу воспроизвести поведение UIButton на этом UIView.Пользовательский UIView addTarget?

Я хотел был бы позвонить, чтобы позвонить addTarget ему как UIButton.

Я знаю, что я могу подкласс UIControl и вызвать

self.sendActionsForControlEvents(UIControlEvents.TouchUpInside); 

, но я хотел бы сделать это на UIView, так как я ее разработке на XIB файл.

+0

Добавить UIControl с настраиваемыми границами с видом Backgound цвета ясной затем добавить цель, UIControl в противном случае добавить TapGesture к представлению – TamilKing

ответ

2

вы можете использовать UITapGestureRecognizer, добавьте его на просмотр программно следующим

self.userInteractionEnabled = true 
let gesture:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "viewTapped:") 
gesture.numberOfTapsRequired = 1 
self.addGestureRecognizer(gesture) 

и реализовать селектор, Вы также можете добавить жест для просмотра с помощью XIb

2

Существует простой способ для достижения этой цели.

-> Перейти к построителю интерфейса вашего класса >> Выберите вид u, чтобы добавить действие в >>, затем измените свой пользовательский класс с IDENTITY INSPECTOR с UIView на «UIControl».

-> Теперь вы можете добавить любой метод IBAction к этому виду.

Его работая как шарм. счастливы кодирования. надеюсь, что это может помочь

2

Это будет лучше, если мы говорим о swift3 или быстры 4

let gesture:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(targetViewDidTapped)) 
gesture.numberOfTapsRequired = 1 
targetView?.isUserInteractionEnabled = true 
targetView?.addGestureRecognizer(gesture) 

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

  • Нет связанных вопросов^_^