2016-08-07 2 views
-1

Good Evening!TableViewCell прослушиватель с быстрым

У меня есть конкретный вопрос о Xcode (Swift) и макете TabelView.

Мое приложение до сих пор 1 Вид в контейнере в этом контейнере - это встроенный UITableViewController, который показывает приятный статический вид таблицы.

Моей ошибкой является то, как я могу зарегистрироваться, когда пользователь нажимает на одну из этих табличных ячеек таблицы?

Метод:

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
    //CODE TO BE RUN ON CELL TOUCH 
} 

не работает для меня - метод не вызывается, тревога внутри этого метода не показан.

Возможно, ложная структура файла? В моей основной раскадровке я подключил файл Swift с UITableViewController, который находится внутри контейнера главного контроллера представления. Код файла ist:

import UIKit 

class test: UITableViewController { 

    override func viewDidLoad() { 
     super.viewDidLoad() 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
    } 

} 

Как зарегистрироваться, когда пользователь нажимает на TableViewCell? Например, показывая предупреждение?

Пожалуйста, помогите мне, я действительно новичок в разработке iOS.

Спасибо!

Вот две фотографии из моего проекта-структуры:

storyboard-structure

tableView-structure

+0

Я, который видел контроллер, вы реализовали 'didSelectRowAtIndexPath'? Почему вместо представления таблицы вы использовали представление контейнера и tableviewcontroller? – Paulw11

+0

Спасибо за ваш ответ! Я реализую «Метод слушателя» в тесте.быстрый файл, файл, который подключается к UITableViewController. Это не работает ... Я использую внешний контроллер, потому что мне нужно использовать статический TableView с группами. – Waldi

+0

Установили ли пользовательский подкласс вашего UITableViewController 'Test'? – Paulw11

ответ

0

Действительно глупая ошибка ... Код был абсолютно прав - проблема была в файле main.swift, файле в контейнере.

Над контейнера я добавил SearchBar и использовал следующий код, чтобы скрыть клавиатуру, нажав вне SearchBar: https://stackoverflow.com/a/27079103/3849220

Этого код разбился мое сенсорное Событие в целом View - также «выше» контейнер ... Функция sendKeyboard() вызывается перед функцией tableView.

@ Paulw11 Большое спасибо за ваш пример проекта! Это очень помогает мне понять логику и найти ошибку. Спасибо!

Я заменил код и напишу немного собственного скрипта, который скрывает клавиатуру, нажав кнопку «Готово». Теперь это работает!

Спасибо!

0

Вид функционирования таблицы требуется три метода источника данных таблицы. обязательно добавьте их.

func numberOfSectionsInTableView(tableView: UITableView) -> return Int number of section 
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) ->return Int number of rows in section 
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> return UITableViewCell that populate the cell data 

надеюсь, что это поможет !!

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