博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift中的uitable
阅读量:6072 次
发布时间:2019-06-20

本文共 2800 字,大约阅读时间需要 9 分钟。

下面是一个静态的table view

 于图可知有两个section头是11..和22..,其中222...是一个table view cell !并且从图可知道样式是left Detail,Accessory(选的是Discloure Indicator)这两个分别图中的Title detail 和 右边的>

下面是一个动态的table view

 

写一个viewcontroll视图控制器

import UIKitclass viewcontroll :UITableViewController{    var person:[Person]!    override func viewDidLoad() {        super.viewDidLoad()        person = PersonImpl().generatePerson()            }    override func didReceiveMemoryWarning() {        super.didReceiveMemoryWarning()    }    //返回行数    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {        return person.count    }   // 给每行赋值    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("demo")! let p = person[indexPath.row] let nameLabel = cell.viewWithTag(1) as! UILabel nameLabel.text = p.name let ageLabel = cell.viewWithTag(2) as! UILabel ageLabel.text = "\(p.age)" return cell }}

而赋值有3种方法

//第一种:直接自己创建cell        //        let cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "cellDemo")//        cell.textLabel?.text = "aaa"//        return cell                //第二种:演示IndexPath参数的使用//        let cell = UITableViewCell(style: .Default, reuseIdentifier: "cellDemo")//        if indexPath.row == 0 {//            //let cell = UITableViewCell(style: .Default, reuseIdentifier: "cellDemo")//            cell.textLabel?.text = "aaa"//            //return cell//        }else if indexPath.row == 1 {//            //let cell = UITableViewCell(style: .Default, reuseIdentifier: "cellDemo")//            cell.textLabel?.text = "bbbb"//            //return cell//        } else if indexPath.row == 2 {//            //let cell = UITableViewCell(style: .Default, reuseIdentifier: "cellDemo")//            cell.textLabel?.text = "ccc"//           // return cell//        }//       return cell                //第三种:        let cell = tableView.dequeueReusableCellWithIdentifier("cellDemo")        cell?.textLabel?.text = "aaaa"        return cell!

 

再写一个person类

import UIKit//模型类class Person {    var name: String    var age: Int    init(name: String,age: Int){        self.name = name        self.age = age    }    }// PersonBLLclass PersonImpl {    func generatePerson() -> [Person] {        //persondao. //persondal.()        var result = [Person]()        let p = Person(name: "david1", age: 11)        result.append(p)                let p2 = Person(name: "david2", age: 22)        result.append(p2)                let p3 = Person(name: "david3", age: 33)        result.append(p3)        return result            }}

 把表格行identifiter改为cell

转载于:https://www.cnblogs.com/kangniuniu/p/4998878.html

你可能感兴趣的文章
四部曲
查看>>
LINUX内核调试过程
查看>>
【HDOJ】3553 Just a String
查看>>
Java 集合深入理解(7):ArrayList
查看>>
2019年春季学期第四周作业
查看>>
linux环境配置
查看>>
ASP.NET MVC中从前台页面视图(View)传递数据到后台控制器(Controller)方式
查看>>
lintcode:next permutation下一个排列
查看>>
python 递归
查看>>
一个想法(续二):换个角度思考如何解决IT企业招聘难的问题!
查看>>
tomcat指定配置文件路径方法
查看>>
linux下查看各硬件型号
查看>>
对象合成复用之策略模式
查看>>
linux命令之tail
查看>>
epoll的lt和et模式的实验
查看>>
Flux OOM实例
查看>>
安装DirectX SDK时出现Error Code:s1023 的解决方案
查看>>
图元的属性---小结
查看>>
什么是ccflow公文流程?如何使用ccflow开发一个公文流程?
查看>>
java工作流引擎Jflow父子流程demo
查看>>