【发布时间】:2015-10-16 19:11:07
【问题描述】:
我的UITableView 在UIViewController 中遇到了一个错误。
我会试着解释一下情况和我的问题。
我有一个TabBarController,它的视图是一个UIViewController 和一个UITableView。我不使用UITableViewController,因为我的UIViewController 上有一些特定控件。
所以,当我的UIViewController 不是我的TabBarController 的孩子时,一切正常:所有行都正确显示。
但是,当我将我的UIViewController 设置为我的TabBarController 的子代时,我遇到了这个错误:只显示了一些行(在所有情况下都是精确的三分之二)。
我只是不明白发生了什么。我的代码似乎有效,但只有当我的UIViewController 不是我的TabBarController 的孩子时。
在这种情况下还有其他方法可以添加吗?
有我的UIViewController的代码:
class ProfileController: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var tableChallenges: UITableView!
@IBOutlet weak var profileTabs: UISegmentedControl!
var pageViewController : UIPageViewController!
override func viewDidLoad() {
super.viewDidLoad()
self.tableChallenges.dataSource = self
self.tableChallenges.delegate = self
self.tableChallenges.reloadData()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 5
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("challengeCustomCell", forIndexPath: indexPath) as! ChallengeCustomCell
switch(self.profileTabs.selectedSegmentIndex) {
case 0:
cell.challengeSuccededOrFailedImage.hidden = true
break
case 1:
cell.challengeSuccededOrFailedImage.hidden = false
cell.challengeSuccededOrFailedImage.image = UIImage(named: "challenge-succeded")
break
case 2:
cell.challengeSuccededOrFailedImage.hidden = false
cell.challengeSuccededOrFailedImage.image = UIImage(named: "challenge-failed")
break
case 3:
cell.challengeSuccededOrFailedImage.hidden = true
break
default: break
}
return cell
}
@IBAction func selectedItemChanged(sender: AnyObject) {
self.tableChallenges.reloadData()
}
}
提前感谢您的回答! :)
【问题讨论】:
-
我也有同样的问题。它发生在 UICollectionViews 和 UITableViews 上。如果我在 UITabBarController 中嵌入包含这些视图之一的 ViewController,则只有一些单元格包含 Storyboard 中指定的子视图。
标签: ios swift uitableview uiviewcontroller uitabbarcontroller