簡體   English   中英

UITableViewController作為ChildViewController不調用委托方法

[英]UITableViewController as ChildViewController not calling delegate methods

我有一個UITableViewController,當我用它作為'初始視圖控制器'時,它工作得很完美。 現在,我將它用作另一個View控制器的“子視圖控制器”,但是現在當我嘗試選擇一行時,當我長時間點擊同一行時,'didSelectRow'方法沒有被調用,'didSelectRow'方法被叫。 我在UITableviewController上幾乎每個問題都經歷過SO,但直到現在我還沒有找到解決這個問題的方法。

我正在使用XCode 6,以下代碼用於將其添加為子視圖控制器

[self addChildViewController:vc];
[self.ringtoneView addSubview:vc.view];
[vc didMoveToParentViewController:self];

任何幫助將不勝感激。

當你調用方法時

[self addChildViewController:vc];

你只需告訴父母viewcontroller轉發觀念和定位方法就好

  • viewWillAppear中:
  • viewDidAppear:
  • viewWillDisappear:
  • viewDidDisappear:
  • willRotateToInterfaceOrientation:時間:
  • willAnimateRotationToInterfaceOrientation:時間:
  • didRotateFromInterfaceOrientation:

所以我認為最好創建一個UITableView並將您的父視圖控制器指定為tableview的委托和數據源。 所以你的視圖控制器需要采用UITableViewDelegate協議和UITableViewDataSource。

最后我設法解決了這個問題,感謝這個答案https://stackoverflow.com/a/18159463/3632958

我在父視圖控制器中錯誤地添加了一個輕擊手勢識別器,這阻止了對表視圖的正常選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM