【iOS(swift)笔记-3】swift使用SnapKit创建高度自适应的cell方法
2018-02-17 14:34
417 查看
//// BlogTableViewCell.swift// App//// Created by kila on 16/02/2018.// Copyright © 2018 kila. All rights reserved.//
import UIKit// 自定义cell类
class MyTableViewCell: UITableViewCell { var uImgAvatar: UIImageView! var uTxtContent: UILabel!
override func awakeFromNib() { super.awakeFromNib() }
override init(style: UITableViewCellStyle, reuseIdentifier: String?) { super.init(style: style, reuseIdentifier: reuseIdentifier) if !self.isEqual(nil) { let uItemBox = UIView() // 第1步:为“Cell的contentView”创建一个子视图,用来容纳所有自定义的视图(这是关键中的关键) uImgAvatar = UIImageView() uTxtContent = UILabel() self.contentView.addSubview(uItemBox) uItemBox.addSubview(uImgAvatar) uItemBox.addSubview(uTxtContent) uItemBox.snp.makeConstraints { (make) -> Void in make.edges.equalTo(self.contentView).inset(UIEdgeInsetsMake(0, 0, 0, 0)) // 第2步:设置uItemBox与“Cell的contentView”边缘对齐,可以有空隙,没必要一定是(0, 0, 0, 0) } // 第3步:uItemBox内部的子控件合理排版即可(由top和bottom与uItemBox的对齐基准决定了cell最终的高度) uImgAvatar.snp.makeConstraints { (make) -> Void in make.size.equalTo(CGSize(width:45, height:45)) make.top.equalTo(uItemBox).offset(25) make.left.equalTo(uItemBox).offset(25) } uTxtContent.numberOfLines = 0 uTxtContent.snp.makeConstraints { (make) -> Void in make.top.equalTo(uImgAvatar.snp.bottom).offset(0) make.left.equalTo(uItemBox).offset(25) make.right.equalTo(uItemBox).offset(-25) make.bottom.equalTo(uItemBox).offset(-25) } } }
required init(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } override func setSelected(_ selected: Bool, animated: Bool) { super.setSelected(selected, animated: animated) }}
import UIKit// 自定义cell类
class MyTableViewCell: UITableViewCell { var uImgAvatar: UIImageView! var uTxtContent: UILabel!
override func awakeFromNib() { super.awakeFromNib() }
override init(style: UITableViewCellStyle, reuseIdentifier: String?) { super.init(style: style, reuseIdentifier: reuseIdentifier) if !self.isEqual(nil) { let uItemBox = UIView() // 第1步:为“Cell的contentView”创建一个子视图,用来容纳所有自定义的视图(这是关键中的关键) uImgAvatar = UIImageView() uTxtContent = UILabel() self.contentView.addSubview(uItemBox) uItemBox.addSubview(uImgAvatar) uItemBox.addSubview(uTxtContent) uItemBox.snp.makeConstraints { (make) -> Void in make.edges.equalTo(self.contentView).inset(UIEdgeInsetsMake(0, 0, 0, 0)) // 第2步:设置uItemBox与“Cell的contentView”边缘对齐,可以有空隙,没必要一定是(0, 0, 0, 0) } // 第3步:uItemBox内部的子控件合理排版即可(由top和bottom与uItemBox的对齐基准决定了cell最终的高度) uImgAvatar.snp.makeConstraints { (make) -> Void in make.size.equalTo(CGSize(width:45, height:45)) make.top.equalTo(uItemBox).offset(25) make.left.equalTo(uItemBox).offset(25) } uTxtContent.numberOfLines = 0 uTxtContent.snp.makeConstraints { (make) -> Void in make.top.equalTo(uImgAvatar.snp.bottom).offset(0) make.left.equalTo(uItemBox).offset(25) make.right.equalTo(uItemBox).offset(-25) make.bottom.equalTo(uItemBox).offset(-25) } } }
required init(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } override func setSelected(_ selected: Bool, animated: Bool) { super.setSelected(selected, animated: animated) }}
相关文章推荐
- iOS - Swift 如何使用Masonry和SnapKit
- 【iOS(swift)笔记-7】自定义九宫格图片布局(基于SnapKit)
- 使用Swift开发IOS项目、UI创建、方法调用
- Swift - 自动布局库SnapKit的使用详解(配置、使用方法、样例)
- 使用Swift开发iOS项目、UI创建、方法调用
- iOS.swift 关于swift的自动布局snapkit第三方的使用记录
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!
- JavaScript学习笔记 创建数组,数组方法使用
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!2012-6-25日更新iap恢复
- 【详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!】【一】(转载)
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!2012-6-25日更新iap恢复
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!【2012-12-11日更新获取"产品付费数量等于0的问题"】
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!【2012-6-25日更新iap恢复详解】
- 详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程
- IOS中使用CATransition创建动画方法
- 详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!2012-6-25日更新iap恢复
- Himi 原创 详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!