2015-01-29 2 views
0

Прежде чем вы ответите, имейте в виду, что я очень новичок в быстром (последний раз, когда я закодировал 2 года назад, и это был OBJC), и у меня, кажется, ошибка. Вот пример моего кода:Использование распознавателей жестов

init(sourceView:UIView, menuItems:Array<String>) { 
    originView = sourceView 
    sideBarTableViewController.tableData = menuItems 

    animator = UIDynamicAnimator(referenceView: originView) 
    let showGestureRecognizer:UISwipeGestureRecognizer = UISwipeGestureRecognizer(target: self, action: "handleSwipe:") 
    showGestureRecognizer.direction = UISwipeGestureRecognizerDirection.Right 
    originView.addGestureRecognizer(showGestureRecognizer) 
    let hideGestureRecognizer:UISwipeGestureRecognizer = UISwipeGestureRecognizer(target: self, action: "handleSwipe:") 
} 

я, кажется, возникли ошибки с целью UISwipeGestureRecognizer. Я не могу установить его сам, потому что он дает мне эту ошибку: «я» используется перед вызовом super.init.

Любая помощь очень ценится.

+0

Вам было бы полезно прочитать мой новый учебник Swift: http://www.apeth.com/swiftBook/ch04.html#_class_initializers. Он объясняет правила того, что вы должны делать в 'init'. – matt

ответ

1

Я не думаю, что это связано с распознавателями жестов. Попробуйте изменить свой метод Init(), путем добавления в начале (внутри):

super.init() 

Это будет инициализировать объект с параметрами класса переопределения. Кроме того, он, вероятно, попросит вас добавить override перед вашим методом init.

+0

Спасибо, просто добавил это в начало моего кода, и теперь он работает безупречно. Спасибо за быстрый ответ! –

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