美文网首页专注iOS开发iOS技术分享iOS之tableView
iOS 时间线-显示学习进度,完成进度等

iOS 时间线-显示学习进度,完成进度等

作者: FTC陳 | 来源:发表于2016-12-14 17:46 被阅读675次
当需要显示学习进度完成的情况,发现以"时间线"的方式显示效果不错,写个简单demo以供参考.

主要实现方式:
(1)通过自定义tableViewCell即可.
(2)Cell的形式可以换成气泡样式效果.

一.相关图形剖析
(1)普通cell显示样式

此处需注意上下两处的延长长度.

标注1: 上方黄色线条的view
标注2: 下方黄色线条的view
标注3: 中间黄色圆点
标注4: 其它地方自定义即可

时间线cell.png
(2)气泡cell显示样式

增加背景ImageView显示气泡图片.

关于气泡图片:
1.如果对Demo中图片不满意,可以自行使用Sketch进行创建.
标红区域是需要用到的"剪刀"与"组合"工具.

SketchBubble.png

2.此处需注意气泡图片的拉伸效果.
这里我使用的方法是使用Xcode的Asset Catalog的Slicing.
好处是:不需代码去拉伸图片,Xcode会自动识别图片的圆角.
使用方法:

Slicing.png

点击ShowSlicing可以调整拉伸区域.

ShowSlicing.png

关于图片拉伸的几种方法,查看此链接即可.

二.主要代码

(1)判断完成情况设置颜色即可.

if (model.isFinsish == 0) {
    self.FinisnLabel.text = @"未完成";
    self.cellImgView.backgroundColor = UnFinsishColor
    self.TopView.backgroundColor = UnFinsishColor;
    self.BottomView.backgroundColor = UnFinsishColor;
}else{
    self.FinisnLabel.text = @"已完成";
    self.cellImgView.backgroundColor = FinsishColor
    self.TopView.backgroundColor = FinsishColor;
    self.BottomView.backgroundColor = FinsishColor;}

(2)去掉第一个"上方view"与最后一个"下方view".

//定义方法传值当前row
- (void) bindDataWithTimeModel:(TimeModel *)model withRow:(NSInteger)row withArrCount:(NSInteger)count{ }    
//第一个去掉顶部view
if (row==0) self.TopView.hidden = YES;
//最后一个去掉底部view
if (row==count-1) self.BottomView.hidden = YES;
三.实现效果

(1)普通Cell样式显示效果

时间线进度.png

(2)Cell气泡样式显示效果

气泡cell.png
四.Demo地址

欢迎star : https://github.com/FTC-Chen/TimeLineCell

五.参考资料

1.http://www.jianshu.com/p/2504f2989556

有任何问题请私信或者留言.

相关文章

  • iOS 时间线-显示学习进度,完成进度等

    当需要显示学习进度完成的情况,发现以"时间线"的方式显示效果不错,写个简单demo以供参考. 主要实现方式:(1)...

  • 课件制作:第5章 插入交互-用是否变量判断课程学习进度习题讲解

    题目: (1)未开始学习时,下方的进度条显示为空。 (2)开始学习,但未完成,进度条显示未一半。 (3)全部学习完...

  • Windows桌面应用程序设计指南(控件篇10-进度条)

    使用进度条,用户可以了解一段冗长操作的具体进度。进度条可以显示完成的近似百分比(确定进度条) ,也可以显示操作正在...

  • 这样读书更赞17

    【今日计划&完成情况】 001美拍60秒视频打卡 进度:完成 002每日声音学习 进度:完成 003每日跑步 进度...

  • 这样读书更赞18

    【今日计划&完成情况】 001美拍60秒视频打卡 进度:完成 002每日声音学习 进度:完成 003每日跑步 进度...

  • 这样读书更赞21

    【今日计划&完成情况】 001美拍60秒打卡 进度:完成 002每日声音学习 进度:完成 003每日跑步 进度:...

  • 这样读书更赞28

    今日计划&完成情况】 001美拍60秒视频打卡 进度:完成 002每日声音学习 进度:完成 003每日俯卧撑 进度...

  • 这样读书更赞29

    今日计划&完成情况】 001美拍60秒视频打卡 进度:完成 002每日声音学习 进度:完成 003每日俯卧撑 进度...

  • 这样读书更赞25

    今日计划&完成情况】 001美拍60秒视频打卡 进度:完成 002每日声音学习 进度:完成 003每日俯卧撑 进度...

  • 这样读书更赞26

    今日计划&完成情况】 001美拍60秒视频打卡 进度:完成 002每日声音学习 进度:完成 003每日俯卧撑 进度...

网友评论

本文标题:iOS 时间线-显示学习进度,完成进度等

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