Ich habe eine benutzerdefinierte UITableViewCell mit einem Label auf der linken Seite und einem Textfeld auf der rechten Seite erstellt. Auf dem Tisch erscheint jedoch das Etikett, aber das Textfeld nicht. Warum passiert das und wie kann ich das beheben?Benutzerdefiniert UITableViewCell zeigt kein Textfeld an
class TableViewCell: UITableViewCell {
var cellLabel: UILabel!
var textField: UITextField!
let tableViewController:TableViewController = TableViewController()
init(frame: CGRect, title: String) {
super.init(style: UITableViewCellStyle.Default, reuseIdentifier: "cell")
cellLabel = UILabel(frame: CGRectMake(0, 0, 100, 40))
let cellTextField = UITextField(frame: CGRectMake(bounds.width*0.2, 100, bounds.width*0.75, 50))
cellTextField.delegate = tableViewController
self.addSubview(cellLabel)
self.addSubview(cellTextField)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
}
}
class TableViewController: UIViewController, UITableViewDelegate, UITableViewDataSource, UITextFieldDelegate {
var tableView: UITableView = UITableView()
let cellLabels : [String] = ["ID","Number of Times Infected"]
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{
var cell = TableViewCell(frame: CGRectMake(0, 0, self.view.frame.width, 50), title: cellLabels[indexPath.row])
cell.cellLabel!.text = cellLabels [indexPath.row]
return cell;
}
}
Was ist die Höhe Sie Zelle? Sie setzen UITextField Herkunft.Y auf 100, vielleicht ist es nicht sichtbar – ronan
set bg Farbe für das Textfeld und überprüfen. –
überprüfen Sie Ihre Schnittstelle Builder, möglicherweise nicht "conntected" Ihre benutzerdefinierte Zelle –