当尝试以编程方式添加时,UIViewController中未显示UITableView(),可能是由于以下原因:
示例代码:
import UIKit
class MyViewController: UIViewController {
var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
// 实例化UITableView
tableView = UITableView(frame: view.bounds, style: .plain)
// 设置UITableView的数据源和代理
tableView.dataSource = self
tableView.delegate = self
// 添加UITableView到视图层级
view.addSubview(tableView)
}
}
// 实现UITableView的数据源和代理方法
extension MyViewController: UITableViewDataSource, UITableViewDelegate {
// 实现必要的数据源和代理方法
// ...
}
示例代码:
extension MyViewController: UITableViewDataSource, UITableViewDelegate {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// 返回UITableView的行数
return 10
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
// 返回UITableView的每行UITableViewCell
let cell = UITableViewCell(style: .default, reuseIdentifier: "Cell")
cell.textLabel?.text = "Row \(indexPath.row)"
return cell
}
// 其他必要的数据源和代理方法
// ...
}
示例代码:
override func viewDidLoad() {
super.viewDidLoad()
// 实例化UITableView
tableView = UITableView(frame: view.bounds, style: .plain)
// 设置UITableView的数据源和代理
tableView.dataSource = self
tableView.delegate = self
// 添加UITableView到正确的父视图
self.view.addSubview(tableView)
}
总结: 要在UIViewController中以编程方式添加UITableView并使其显示,需要实例化UITableView对象并将其添加到正确的父视图中。还需要实现UITableView的数据源和代理方法来提供数据和处理用户交互。确保UITableView的布局和父视图的层级关系正确设置。
领取专属 10元无门槛券
手把手带您无忧上云