2016-07-26 21 views
-1

ストーリーボードでは、UITableViewで使用する1つ(またはそれ以上)のプロトタイプセルを定義できます。複数のUITableViewを持つ同じプロトタイプセル

しかし、私は複数のUITableView(s)と同じプロトタイプのセルを使用する必要がありますか?

可能ですか?おかげさまで

答えて

2

UITableViewの間でセルを共有する唯一の方法は、.xibで別々のファイルとして定義し、それらに再利用識別子を付けることです。その後、コードでは、ファイル/対応するクラスUITableViewに登録します。

あなたのtableViewControllerのviewDidLoad()内にこれを置く:

tableView.registerNib(UINib(nibName: "", bundle: NSBundle.mainBundle()), forCellReuseIdentifier: "") 

をそして、あなたはあなたが(.xib)、あなたが行うことができますnibファイルを作成する必要がcellForRowAtIndexPath

+0

ありがとうございます。 'UINib'初期化子に欠けているパラメータがあることに注意してください。 –

+0

@appzYourLifeあなたは正解です、ありがとうございます。 Xcodeのないメモリから入力したものは、忘れてしまった。 –

1

内部で通常通りに続けることができるを実行して、ファイル - > - >(たUserInterfaceセクションの下)を表示

enter image description here

その後、セットアップあなたのUITableViewCellの要素を、いくつかreuseIdentifierを設定し、あなたも、あなたがのviewDidLoadで

(このカスタムtableViewCellを使用していた)あなたのViewControllerで、その後

が必要な場合は、サブクラスを作成することができますが、そのペン先を登録する必要がありますtableViewのような、と

override func viewDidLoad() { 
    // the .xib filename 
    tableView.registerNib(UINib(nibName: "CustomCell", bundle: nil), forCellReuseIdentifier: "CustomCellId") 

} 

はその後cellForRowAtIndexPathで、あなたは、通常のプロトタイプ細胞と同じように使用することができます

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 

    let cell = tableView.dequeueReusableCellWithIdentifier("CustomCellId", forIndexPath: indexPath) as! Customcell 

    // your custom code 
    return cell 
} 
関連する問題