我在aUICollectionView
的子代使用aUITableView
或aUIViewController
时发现了一个非常奇怪的错误,aUITabBarController
是aUITabBarController
的一部分。
想象一下以下设置:
如您所见,我们有一个包含viewcontrollersMostViewedViewController
和MostRecentViewController
的MostViewedViewController
。UIButton
包含一个"Show"-Segue
,单击时会导致MostRecentViewController
指向MostRecentViewController
。UITableView
包含一个mostRecentCellIdentifier
,其中包含一个具有重用标识符MostViewedViewController
的“原型单元”。viewcontroller的类与uitableviewdatasource连接,并包含以下代码:
import UIKit
import Foundation
class MostRecentViewController : UIViewController {
private let kReuseIdentifier = "mostRecentCellIdentifier"
@IBOutlet private weak var tableView: UITableView!
internal var dataArray : [Int]? {
didSet {
tableView.reloadData()
}
}
override func viewDidLoad() {
super.viewDidLoad()
dataArray = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
}
}
extension MostRecentViewController : UITableViewDataSource {
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return dataArray?.count ?? 0
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
return tableView.dequeueReusableCellWithIdentifier(kReuseIdentifier, forIndexPath: indexPath)
}
}
现在,当我打开应用程序时,tabbarviewcontroller显示
MostRecentViewController
。如果我单击按钮,我会看到以下内容(应该是这样的):->ckick->
但是,当我使用
TabBar
切换到时,uitableviewcell具有正确的背景色,但不包含任何已定义的子视图(为什么不显示它们???)以下内容:这里有一个指向EXAMPLE XCODE PROJECT的链接。
这个问题可能与THIS ONE
最佳答案
在使用上面描述的星座中的大小类时,似乎有一个bug。若要解决此问题,请选择情节提要,然后打开“文件检查器”选项卡:
然后取消选中情节提要的以下选项:
关于swift - Swift: Storyboard :当父UIViewController位于UITabBarController内部时,UITableViewCell为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34020542/