美文网首页
iOS开发之UI(十二)

iOS开发之UI(十二)

作者: zero点点 | 来源:发表于2016-02-22 22:29 被阅读25次

自定义Cell

系统提供的Cell满足不了复杂的样式,因此:自定义Cell和自定义视图一样,自己床架哪一种符合我们要求的Cell并使用这个Cell

自定义Cell步骤:

  • 创建一个类继承于UITableViewCell
  • 实现UITableViewCell的初始化方法
  • 确保所有你想要添加的子视图都在自定义Cell的初始化方法中创建
  • 在Cell的子视图创建成功后,将子视图设置为属性

// 重写初始化方法
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
  if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
    // 创建图片视图对象
    self.iconImageView = [[UIImageView alloc] init];
    self.iconImageView.backgroundColor = [UIColor blueColor];
    [self.contentView addSubview:self.iconImageView];
    // 创建标题对象
    self.titleLabel = [[UILabel alloc] init];
    self.titleLabel.backgroundColor = [UIColor blueColor];
    [self.contentView addSubview:self.titleLabel];
    // 创建简介对象
    self.introduceLabel = [[UILabel alloc] init];
    self.introduceLabel.backgroundColor = [UIColor blueColor];
    [self.contentView addSubview:self.introduceLabel];
    
    // 布局
    CGFloat iconH = kHeight - 10;
    CGFloat iconW = (kWidth - 15) / 3;
    CGFloat labelH = (iconH - 5) / 3;
    
    self.iconImageView.frame = CGRectMake(5, 5, iconH, iconW);
    self.titleLabel.frame = CGRectMake(10 + iconW, 5, 2 * iconW, labelH);
    self.introduceLabel.frame = CGRectMake(10 + iconW, 10 + labelH, 2 * iconW, 2 * labelH);
}
return self;
}

// 布局子视图
- (void)layoutSubviews {
    CGFloat iconH = kHeight - 10;
    CGFloat iconW = (kWidth - 15) / 3;
    CGFloat labelH = (iconH - 5) / 3;

    self.iconImageView.frame = CGRectMake(5, 5, iconH, iconW);
    self.titleLabel.frame = CGRectMake(10 + iconW, 5, 2 * iconW, labelH);
    self.introduceLabel.frame = CGRectMake(10 + iconW, 10 + labelH, 2 * iconW, 2 * labelH);
}

本文不讨论自适应高度,因为至今还没有程序的方法来代码自定义创建Cell并且获取自适应高度,除非通过第三方类库。

相关文章

  • UI常用的控件

    #iOS开发之UI篇#iOS开发之UI篇 #常用控件介绍1## #UI第09天:滚动视图# ##UIScrollV...

  • iOS开发之UI(十二)

    自定义Cell 系统提供的Cell满足不了复杂的样式,因此:自定义Cell和自定义视图一样,自己床架哪一种符合我们...

  • KVC

    iOS 如何使用KVC iOS开发UI篇—Kvc简单介绍 iOS开发系列--Objective-C之KVC、KVO

  • IOS学习(9)-UITabBarController

    iOS开发UI篇—UITabBarController简单介绍视图之UITabBarController结构详解(...

  • iOS部分控件介绍及设计规范

    iOS及Android图标按钮设计规范 UI设计师需要了解的开发中常用的UI控件(ios篇) iOS交互设计基础之...

  • 2019-03-22

    iOS 开发之修改图片image颜色 吐槽:平时开发中可能因为 UI妹子懒给到图片中没有需要的颜色,或者嫌弃UI...

  • UITableView ──分页加载

    IOS开发UI展示之UITableView ──分页加载 在ios开中中,由于屏幕尺寸限制,如果需要显示的数据很多...

  • iOS开发之定位

    iOS开发之定位 iOS开发之定位

  • UI第一周学习总结

    ios开发之UI学习第一周总结 UIView基本属性、方法、视图关系、动画 基本属性和方法 UIView:是iOS...

  • iOS开发-UI 从入门到精通(二)

    iOS开发-UI 从入门到精通(二)是对 iOS开发-UI 从入门到精通(一)知识点的巩固,主要以习题练习为主,增...

网友评论

      本文标题:iOS开发之UI(十二)

      本文链接:https://www.haomeiwen.com/subject/icubkttx.html