2015-11-10 3 views
0

Я использую Parse.com для создания своего приложения.Cell Tap не работает на didSelectRowAtIndexPath

Я инициализировал PFQueryTableViewController как мой подкласс.

Я не могу нажать indexPath.row так, чтобы ячейка привела к другому viewController и передала данные.

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 

     print("tapped") 
     //Nothing prints. The simulator cell doesn't even change color as it normally does... 

} 

В обычном проекте без Парса я коснусь его, и это ведет меня туда, куда я хочу, чтобы он вел. Я не понимаю, почему это не работает.

Я упоминаться несколько ссылок, таких как:

  1. https://www.parse.com/questions/pfquerytableview-didselect-row-open-pbobject-in-uiwebview (устаревшее и Objective-C)
  2. https://www.parse.com/questions/using-pfquerytableviewcontroller-in-detail-view (не работает)
  3. didSelectRowAtIndexPath method at PFQueryTableViewController (тоже не работает)

Ничего не помогло.

Я также пытаюсь использовать UIGestureecognizer на представлении из пользовательской ячейки. Это не помогает ни ...

Это инспектор атрибуты:

http://postimg.org/image/3omx3serh/

Я выбрал и снят соответствующие части. Ничего не работает.

EDIT: Я также использую инициализатор:

override init(style: UITableViewStyle, className: String!) 
    { 
     super.init(style: style, className: className) 

     self.pullToRefreshEnabled = true 
     self.paginationEnabled = false 
     self.objectsPerPage = 25 

     self.parseClassName = className 
     self.tableView.rowHeight = 120 
     self.tableView.allowsSelection = false 
    } 

required init?(coder aDecoder: NSCoder) { 
    fatalError("init(coder:) has not been implemented") 
} 

Любая идея, почему я не могу задействовать ячейки? Любые идеи о том, как нажимать на ячейку?

+0

У вас есть uibutton или что-то еще, что может быть доставлено краном, а не спускаться в вашу камеру? – Tyrelidrel

+0

Это должна быть сама ячейка. didSelectRowAtIndexPath должен запускать segue другому viewController. Или даже признается, что существует ячейка. Работает cellForRowAtIndexPath, и он печатает на пользовательском интерфейсе разные ярлыки и кнопки. Но я хочу, чтобы камера сама захватила прикосновение. – lukaivicev

ответ

0

Я также использую инициализатор, к которому я обращаюсь. Этот PFTableViewController я строю только в коде. Для тех, кто строит код, а не в раскадровке, убедитесь, что self.tableView.allowsSelection = true. Видел другие ссылки, испытывающие подобные проблемы. Вот полный код инициализаторе:

override init(style: UITableViewStyle, className: String!) 
{ 
    super.init(style: style, className: className) 

    self.pullToRefreshEnabled = true 
    self.paginationEnabled = false 
    self.objectsPerPage = 25 

    self.parseClassName = className 
    self.tableView.rowHeight = 120 
    self.tableView.allowsSelection = true 
} 

required init?(coder aDecoder: NSCoder) { 
    fatalError("init(coder:) has not been implemented") 
} 

Понял, что self.tableView.allowsSelection = false был установлен в ложь вместо истины.

Я установил его в true и теперь он работает.

1

Во-первых, я бы проверил, включен ли в «Table View» параметр «Взаимодействие с пользователем» внутри Инспектора атрибутов.

Во-вторых, я бы изучил, какой класс был вставлен внутри вашего инспектора удостоверений диспетчера View.

+0

Я создаю ячейку в файле XIB. Ячейка является правильным классом, и это класс, на который я ссылаюсь в 'PFQueryTableViewController'. Проверьте мой обновленный ответ – lukaivicev

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