如何快速在侧菜单表中添加视图
Posted
技术标签:
【中文标题】如何快速在侧菜单表中添加视图【英文标题】:How to add view in side menu table in swift 【发布时间】:2019-07-30 16:00:34 【问题描述】:我创建了宽度为 200 的侧菜单表,我可以在其中添加标签以显示菜单项,但在这里我必须在 swift 表中的标签上方添加 uiview。
这是我的代码:
导入 UIKit
class MenuTableViewController: UITableViewController
var selectedMenuItem : Int = 0
var menuItems = ["Home", "SignIN", "SignUp", "QR Code", "CreateBUsiness", "Services", "Employees", "Settings", "EmployeeTimeoff" ,"Billing", "Raise Request", "MYBusiness"]
override func viewDidLoad()
super.viewDidLoad()
//Customize apperance of table view
tableView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
tableView.separatorStyle = .none
tableView.backgroundColor = UIColor.blue
tableView.scrollsToTop = false
//Preserve selection between presentations
self.clearsSelectionOnViewWillAppear = false
tableView.selectRow(at: IndexPath(row: selectedMenuItem, section: 0), animated: false, scrollPosition: .middle)
override func didReceiveMemoryWarning()
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
// MARK: - Table view data source
override func numberOfSections(in tableView: UITableView) -> Int
// Return the number of sections.
return 1
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
// Return the number of rows in the section.
return menuItems.count
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
var cell = tableView.dequeueReusableCell(withIdentifier: "CELL")
if (cell == nil)
cell = UITableViewCell(style: UITableViewCell.CellStyle.default, reuseIdentifier: "CELL")
cell!.backgroundColor = UIColor.clear
cell!.textLabel?.textColor = UIColor.white
cell!.textLabel?.text = menuItems[indexPath.row]//"ViewController #\(indexPath.row+1)"
return cell!
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat
return 50.0
输出是
但我需要这样:
请帮我解决这个问题。
【问题讨论】:
在 tableView 菜单中添加标题视图。只需搜索如何添加标题视图,您将获得大量工作示例。***.com/questions/31964941/… @channu,非常感谢,它的工作。也感谢您的链接,它对我有用。 WC..快乐编码 【参考方案1】:您可以通过函数func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?
为tableview添加标题
您可以在此标题中自定义和添加任何内容。请尝试让我知道您的下一个问题
【讨论】:
【参考方案2】:实现此目的的方法之一是向表格视图标题添加自定义视图。
这可以通过在MenuTableViewController
中覆盖viewForHeaderInSection
来完成。
方法如下:
-
使用 xib 文件创建自定义视图,比如“TableViewHeader.xib”
在 MenuTableViewController 中覆盖
viewForHeaderInSection
。
获取对 xib 文件的引用并在 viewForHeaderInSection
函数中返回它。
在 MenuTableViewController 类中,它应该如下所示:
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?
let tableHeaderView = Bundle.main.loadNibNamed("TableViewHeader", owner: self, options: nil)?.first! as! UIView
return tableHeaderView
【讨论】:
【参考方案3】:我在 swift 中添加表格视图时也遇到了这种问题。所以我点击这个链接,所有细节都清楚。所以请关注enter link description here
【讨论】:
以上是关于如何快速在侧菜单表中添加视图的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin/SQLite/C# - 如何使用菜单项删除从列表视图和 SQLite 表中删除一行