0
2つのカスタムセルを持つUICollectionビューがあります。 UICollectionViewCellカスタムセルは、NIBを使用して構築されます。 UICollectionViewCell NIBの中には、UITableViewがあります。しかし、UITableView自体にはカスタムセルがあります。だから私の質問は:既にNIBであるUICollectionViewCell内でカスタムセルを使用してUITableを読み込む方法
UITableViewの代わりにUICollectionViewCell NIBのカスタムセルをロードするにはどうすればいいですか?ほとんどすべての場合には
import UIKit
class HeaderFooterCollectionViewCell: UICollectionViewCell {
//Tableview
@IBOutlet weak var tableView: UITableView!
//Buttons
@IBOutlet weak var resetButton: UIButton!
@IBOutlet weak var periodButton: UIButton!
@IBOutlet weak var undoButton: UIButton!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
// Register cell classes
tableView.register(UINib(nibName: "ShotInformationTableViewCell", bundle: nil), forCellReuseIdentifier: "cell")
}
}
extension HeaderFooterCollectionViewCell: UITableViewDataSource {
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! ShotInformationTableViewCell
return cell
}
}
感謝。それはうまくいった。 –
ねえ@PaulS。私は 'cellForItem'を返す間に私の答えを使用していますが、残念ながら、' let cell = UINib(nibName: "XIB_File_Name"、bundle:nil).instantiate(withOwner:nil、options:nil)[0] as! XIB_Class_Name'結果は同じですので、私の答えはどのようにあなたのために働いたのですか? – Roy
これは私のコード 'let cell = Bundle.main.loadNibNamed(" ShotInformationTableViewCell "、所有者:自己、オプション:なし)ですか? ShotInformationTableViewCell'はクラッシュなしで正常に動作します。 –