私はUIViewController
を持っていると私はそれにTableView
を置く:SwiftのUITableViewにセルが表示されないのはなぜですか?
私も私のテーブルビューは、動的生成コンテンツを持ち、識別子「セル」を追加ストーリーボードで確認し、それにUITableViewCell
を追加しましたUITableViewCell
に私は私のクラスにアウトレットとそれを接続すると、私はUITableViewDelegate
から継承を設定します
class MapViewController: UIViewController, UITableViewDelegate, UITextViewDelegate {
@IBOutlet weak var myTableDetailsPanel: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
myTableDetailsPanel.delegate = self
}
それから私は私のカスタムオブジェクトは、私のアレイに追加:
var items = NSMutableArray()
...
print("size of items before: \(items.count)")
items.addObject(myObject)
print("size of items after: \(items.count)")
myTableDetailsPanel.reloadData()
myTableDetailsPanel.hidden = false
私もこの方法があります:
をfunc tableView(myTableDetailsPanel: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = myTableDetailsPanel.dequeueReusableCellWithIdentifier("cell") as! MyDetailsCell
let yawp:MySingleObject = self.items[indexPath.row] as! MySingleObject
print("hello")
...
...私の問題は、パネルが空で表示されていることです。コンソールに表示されます。
size of items before: 0
size of items after: 1
しかし、何とか私はhello
と表示されません。私のコードはcellForRowAtIndexPath
から決して走らない。なぜそうなのか?
'myTableDetailsPanel.dataSource = self'の宣言が欠落していて、もちろん' UITableViewDataSource'を実装しています –
ありがとうございました!私はそれを受け入れることができるように答えとしてそれを提出してください! – user3766930
'var items = NSMutableArray()'ではなく 'var items = [MySingleObject]()'を使うと、多くの型キャストを取り除くことができます。 – vadian