当前位置 > 主页 > 万和大讲堂 >


iOS开发 UITableView 常用细节 | 南京iOS培训分享

2016-08-18 11:41


  之前南京万和iOS培训总结分享的内容在实际 iOS 开发过程中都能起到一定的辅助,那么本篇文章就着重归类一些平时开发常用的代码模块部分,那种经常使用但容易出错或者漏掉细节的内容。除此之外,还有一些优化方法的归纳,特别是UITableView,使用频率相当高。


  内容慢慢添加,涉及的可能会很多,写这些的目的是为了提醒大家,不要在一些细节上弄出问题。


  # 1.隐藏分割线


  # 2.隐藏多余Cell


  //##?在ViewController初始化时候加载 如viewDidLoad


  //隐藏分割线


  tableView.separatorStyle = UITableViewCellSeparatorStyle.None


  //隐藏多余的cell


  tableView.tableFooterView = UIView(frame: CGRectZero)


  # 3.分割线头部顶到底、分割线颜色


  ///##?分割线头部顶到底、分割线颜色


  //启动、旋转、视图大小位置发生改变、增加子视图等..都会调用


  override func viewDidLayoutSubviews() {


  tableView.separatorInset = UIEdgeInsetsZero


  tableView.layoutMargins = UIEdgeInsetsZero


  //articleTableView.separatorColor = UIColor.redColor() //分割线颜色


  }


  //没当cell即将出现屏幕时候都会调用此方法


  func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {


  cell.separatorInset = UIEdgeInsetsZero


  cell.layoutMargins = UIEdgeInsetsZero


  }


  # 4.自定义点击后效果 Cell 背景等更改


  //##?在cellForRowAtIndexPath方法使用


  //点击Cell时,没有点击效果


  cell.selectionStyle = UITableViewCellSelectionStyle.None


  //系统默认的颜色  .Blue蓝色-默认 .Grap灰色 .None 无色


  //点击Cell时,自定义选中后的背景视图


  //背景颜色


  cell.selectedBackgroundView = UIView()


  cell.selectedBackgroundView?.backgroundColor = UIColor.clearColor()


  //背景图片


  cell.selectedBackgroundView = UIImageView(image: UIImage(named: article.avatarImage))


  //cell 右边的辅助的提示


  cell.accessoryType =  .DisclosureIndicator //>


  //.Checkmark //√    .DetailDisclosureButton // ! >    .DetailButton // !


  # 5.类似button点击效果 Cell - 闪一下


  //##?在 didSelectRowAtIndexPath 方法内使用


  //点击Cell时 一闪而过 适合转场时候交互 -


  tableView.deselectRowAtIndexPath(indexPath, animated: false) // - true 动画慢吞吞,适合不转场时


  Cell进入动画


  # 6. 没有数据时候提示 可以自行加入空数据时候显示


  //判断有没有数据显示 提示


  func showIfNoAnswer() {


  let imageView = UIImageView(frame: CGRectMake(0, 0, 60, 60))


  let image = UIImage(named: "sad")


  imageView.image = image?.imageWithRenderingMode(.AlwaysTemplate)


  imageView.tintColor = UIColor.grayColor()


  imageView.center = CGPointMake(self.view.center.x, 145)


  imageView.tag = 33  // 方便 remove


  self.view.addSubview(imageView)


  let label = UILabel(frame: .zero)


  label.text = "加载失败"


  label.font = UIFont(name: "New Gulim", size: 20)


  label.textColor = UIColor.grayColor()


  label.textAlignment = .Center


  label.tag = 3


  label.sizeToFit()


  label.backgroundColor = UIColor.clearColor()


  label.center = CGPointMake(self.view.center.x, 200)


  view.addSubview(label)


  }


  }


  想和兴趣相投的朋友们一起交流吗?那就来江苏万和计算机培训中心吧。而江苏万和作为南京专业的iOS培训中心,欢迎广大有志于此行业发展的学员们加入。

最近开班 more>
  • 全栈开发
  • 前端基础班
  • 软件测试
  • Java大数据开发工程师
  • 云原生精英班
  • 开发课程基础班第四期
  • 开发课程基础班第三期
  • 开发课程基础班第二期
  • 开发课程基础班第一期
  • Java Web UI Python
  • CISP
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • OCM 12C
  • OCP 19C
  • RHCE 9.0
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • vip班
  • 考试计划
  • 脱产班
  • 脱产班
  • 脱产班
  • 双休班
  • 双休班
  • 双休班
  • 双休班
  • 业余班
  • 业余班
  • 10月16日
  • 9月23日
  • 9月2日
  • 9月30日
  • 8月26日
  • 10月8日
  • 9月23日
  • 9月16日
  • 9月9日
  • 随时开课
  • 9月21日
  • 10月17日
  • 9月18日
  • 9月2日
  • 11月2日
  • 10月26日
  • 9月7日
  • ——
  • 随时开课
  • 9月26日
    • 姓 名 :
    • 电 话 :
    • 课 程 :

技术交流群

  • Java大数据交流群560819979加入
  • Python技术交流群595083299加入
  • Oracle技术交流群595119011加入
  • Web前端技术交流群604697610加入
  • Huawei技术交流群482919361加入
  • Redhat技术交流群587875348加入
  • UI设计技术交流群511649801加入
  • Cisco技术交流群596886705加入
  • IT运维技术交流群605888381加入