Создайте файл XIB:
Файл -> новый файл -> ios-> класс касания какао -> следующий
убедитесь, что стоит галочка "также создать файл XIB"
Я хотел бы выступить, tableview
поэтому выбрал подклассUITableViewCell
вы можете выбрать в качестве требования
Создание файла XIB по вашему желанию (RestaurantTableViewCell.xib)
нам нужно получить высоту строки, чтобы установить в таблице высоту каждой строки
Сейчас! нужно закинуть их быстрым напильником. Я взбунтовался, restaurantPhoto
и restaurantName
ты можешь всех уложить .
Теперь добавляем UITableView
name
Имя файла пера, которое не обязательно должно включать расширение .nib.
owner
Объект, назначаемый как объект-владелец файла пера.
параметры
Словарь, содержащий параметры, используемые при открытии файла пера.
сначала,
если вы не определите сначала, затем захватите все представления .. поэтому вам нужно захватить одно представление внутри этого набора frist
.
Bundle.main.loadNibNamed("yourUIView", owner: self, options: nil)?.first as! yourUIView
вот контроллер табличного представления Полный код
import UIKit
class RestaurantTableViewController: UIViewController ,UITableViewDataSource,UITableViewDelegate{
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 5
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let restaurantTableviewCell = Bundle.main.loadNibNamed("RestaurantTableViewCell", owner: self, options: nil)?.first as! RestaurantTableViewCell
restaurantTableviewCell.restaurantPhoto.image = UIImage(named: "image1")
restaurantTableviewCell.restaurantName.text = "KFC Chicken"
return restaurantTableviewCell
}
// set row height
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 150
}
}
ты сделал :)