采取拖的控件
@IBOutlet weak var titleLabel: UILabel!
@IBOutlet weak var timeLabel: UILabel!
@IBOutlet weak var numberLabel: UILabel!
@IBOutlet weak var picImgView: UIImageView!
func setCellWithData(model:musicModel) -> Void {
self.titleLabel.text = model.title
self.timeLabel.text = model.time
self.numberLabel.text = model.number
self.picImgView.image = UIImage(named: model.pic)
}
创建一个数组model传值
static func getCellData()->[Model] {
var dataSource:Array = ["沙拉大家发顺丰","爱神的箭发文","奥ID是伐啦撒旦法",",阿斯蒂芬杰拉德司法所","瓦尔范德萨水电费","你先注册是加水电费","你是十二","小赤佬","小垃圾","笨死了"]
var immm:Array=["1","2","3","4","5","6","7","8","9","10"]
var mod:[Model]=[]
for i in 0..<dataSource.count{
let md = Model.init(img:immm[i] , text: dataSource[i])
mod.append(md)
}
return mod
}
model里定义属性初始化
var img:String?
var text:String?
init(img:String,text:String) {
self.img=img
self.text=text
}
初始化
var mArr:[musicModel] = CellData.getCellData()
cell
let tv = UITableView(frame: self.view.frame, style: .plain)
self.view.addSubview(tv)
tv.delegate = self
tv.dataSource = self
tv.register(UINib(nibName: "MusicCell", bundle: Bundle.main), forCellReuseIdentifier: "Cell1")
let viewHead = UIView(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 150))
tv.tableHeaderView = viewHead
let imgView = UIImageView(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 150))
viewHead.addSubview(imgView)
imgView.image = UIImage(named: "1")
let viewBack = UIView(frame: CGRect(x: 0, y: viewHead.frame.size.height-60, width: UIScreen.main.bounds.width, height: 60))
viewHead.addSubview(viewBack)
viewBack.backgroundColor = UIColor.lightGray
let imgHead = UIImageView(frame: CGRect(x: 20, y: (viewBack.frame.size.height-40)/2, width: 40, height: 40))
viewBack.addSubview(imgHead)
imgHead.image = UIImage(named: "1")
let title = UILabel(frame: CGRect(x: 20+imgHead.frame.size.width+5, y: (viewBack.frame.size.height-40)/2, width: 150, height: 40))
viewBack.addSubview(title)
title.text = "速记播放"
@objc func leftButton() -> Void {
print("点击左键")
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return mArr.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell:MusicCell = tableView.dequeueReusableCell(withIdentifier: "Cell1") as! MusicCell
let md:musicModel = mArr[indexPath.row]
cell.setCellWithData(model: md)
return cell
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 100
}