自定义cell

  • 提供数据设置接口, 设置数据
  • 提供占位图,图片下载是有延时, 或者服务器提供的数据, 可能存在问题, 所以要提供个占位符, 如果是因为下载延时的原因, 则有可能会导致后面就算图片被下载了也是不会被显示
  • 实现设置数据方法
  • 界面细节

    • 1.头像圆型(两种方法)

      • 1.修改控件的圆角半径
      • 2.裁剪图片生成, 一张新的图片, 图形上下文
      • 在awakeFromNib 方法中设置(xib加载就会调用, 只会设置一次)
      • 在头像被下载完成时裁剪图片(这时就要用 SDW 下载图片的另一个方法, 有回调的方法中裁剪图片)
        • 1.开启上下文(注意使用有三个参数的方法, 不要在使用之前的那个方法)
        • 2.描述圆形裁剪路径
        • 3.设置为裁剪区域
        • 4.画图片
        • 5.取出图片
        • 6.关闭上下文
        • 7.设置图片
        • (抽分类, 将生成圆角的图片直接抽分类, 对象方法或者类方法都行,对象方法更简单)
      • 注意: 处理如果没有下载到图片, 就直接返回(if判断即可), 如果不做处理, 则会运行时程序可能崩溃;
      • 博客文章<<小心别让圆角成为你的列表帧数杀手>>(博客已经过时)
        • iOS9 帧数是不会下降是因为苹果已经做了处理
        • iOS8 之前还是有问题
    • 2.订阅数显示细节处理

      • 大于10000做数据处理, 并拼接数据
        • 使用intValue 转换字符, 只转换字符串对象上面的数字, 其他中文字符不会转换
        • 去除小数点后面的全部多余没必要的".0"
      • 小于10000不做数据处理
    • 3.设置分割线全屏
      • 方法一: 利用系统属性,
        • self.tableView.separatorInset = UIEdgeInssetsZero;
        • cell.layoutMargins = UIEdgeInsetsZero;
      • 方法二: 重写cell 的frame的方法
        • 先面取消系统的分割线 separatorStyle = UITableViewCellSeparatorStyleNone
        • cell的位置, 尺寸谁计算的 -> 系统的tableview
        • cell的位置, 尺寸什么时候计算? -> 先将所有要显示的cell的位置尺寸全部计算之后, 才会创建cell显示
        • 设置cell 的高度剪去分割线的高度,即可
        • 注意: 修改高度一定要在调用父类的 frame方法之前

results matching ""

    No results matching ""