swift 自定义cell

swift 自定义cell,第1张

//

//  XiaoxiViewController.swift

//  swift table

//

//  Created by 翟子健 on 2018/12/12.

//  Copyright © 2018年 翟子健. All rights reserved.

//

// 屏幕的宽

let SCREEN_WIDTH1 = UIScreen.main.bounds.size.width

// 屏幕的高

let SCREEN_HEIGHT = UIScreen.main.bounds.size.height

import UIKit

class XiaoxiViewController: UIViewController,UITableViewDataSource,UITableViewDelegate,UISearchBarDelegate {

    vartableArr:[String] = ["title","让标","a"]

    overridefuncviewDidLoad() {

        super.viewDidLoad()

        self.view.backgroundColor = .orange

        lettbv =UITableView(frame:CGRect(x:0, y:115, width:SCREEN_WIDTH1, height:SCREEN_HEIGHT), style: .grouped)

        tbv.backgroundColor = UIColor.white

        view.addSubview(tbv)

        tbv.dataSource=self

        tbv.delegate=self

        // 此处注册cell

        letcellNib =UINib(nibName:"TableViewCell", bundle:nil)

        tbv.register(cellNib, forCellReuseIdentifier:"cellID")

        letsearchBar =UISearchBar(frame:CGRect(x:0, y:85, width:SCREEN_WIDTH1, height:50))

        searchBar.showsCancelButton=true  // 取消按钮是否显示

        searchBar.delegate=self

        self.view.addSubview(searchBar)

    }

    // cell的个数

    functableView(_tableView:UITableView, numberOfRowsInSection section:Int) ->Int{

        returntableArr.count

    }

    // UITableViewCell

    functableView(_tableView:UITableView, cellForRowAt indexPath:IndexPath) ->UITableViewCell{

       // let cellid = "testCellID"

        letcell:TableViewCell= tableView.dequeueReusableCell(withIdentifier:"cellID")as!TableViewCell

        cell.Title.text=tableArr[indexPath.row]

        cell.HeadImage?.image=UIImage(named:"")

        returncell

    }

    //MARK: UITableViewDelegate

    // 设置cell高度

    functableView(_tableView:UITableView, heightForRowAt indexPath:IndexPath) ->CGFloat{

        return60.0

    }

    // 选中cell后执行此方法

    functableView(_tableView:UITableView, didSelectRowAt indexPath:IndexPath) {

        print(indexPath.row)

    }

}

你可以使用xib,推荐使用,创建cell,同时创建Xib即可,xib上面可以自定义布局

// 注册nib

tableView.registerNib(UINib(nibName: "nibName", bundle: mainBundle), forCellReuseIdentifier: "cellIdentifier")

// 注册类

tableView.registerClass(TableViewCell.self, forCellReuseIdentifier: "cellIdentifier")

// 数据源

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) ->UITableViewCell {

let cell = tableView.dequeueReusableCellWithIdentifier("cellIdentifier", forIndexPath: indexPath) as! TableViewCell

return cell

}

使用注册类的时候需要手写代码

重写init(style: UITableViewCellStyle, reuseIdentifier: String?)方法,并在里面进行UI设置

ps: 网上搜自定义cell教程还是挺多的


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11313167.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存