swift tableView的简单用法

//
//  ViewController.swift
//  SwiftTableView
//
//  Created by fe on 2017/3/3.
//  Copyright © 2017年 fe. All rights reserved.
//

import UIKit

//swift遵守协议只需要跟在父类之后,使用逗号隔开
class ViewController: UIViewController {


    //1.创建tableView对象
    lazy var tableView : UITableView = UITableView()
    override func viewDidLoad() {
        super.viewDidLoad()
        
        //初始化UI
        setUpUI()
    
    }
    

}

/*
 extension ViewController {} 相当于OC中的类别,可以把一些方法放在里面,不能写属性
 */
// MARK:-初始化UI的扩展
extension ViewController{
    ///初始化UI
    func setUpUI() {
        //2设置tableView的frame
        tableView.frame = view.bounds
        //3.添加到控制器view
        view.addSubview(tableView)
        //4设置数据源
        tableView.dataSource = self
        //5设置代理
        tableView.delegate = self
    }
}


/*
 extension ViewController {} 相当于OC中的类别,可以把一些方法放在里面,不能写属性
 */

// MARK: tableView的数据源和代理的扩展  (这里相当于OC中的 #pragma 书签)
extension ViewController :UITableViewDataSource,UITableViewDelegate{
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 20;
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        //1创建cell
        let identifier : String = "identifier"
        var cell = tableView.dequeueReusableCell(withIdentifier: identifier)
        if cell == nil {
            //在swift中使用枚举类型方式 1>枚举类型.具体类型  2> .具体类型
            cell = UITableViewCell(style: UITableViewCellStyle.value1, reuseIdentifier: identifier)
        }
        //2设置数据
        
        cell?.textLabel?.text = "swiftTableView"
        cell?.detailTextLabel?.text = "\(indexPath.row)"
        
        //3返回cell
        
        return cell!//在这个地方返回的cell一定不为nil,可以强制解包
    }
    
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        MyLog(message: indexPath.row)
    }
}




















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值