美文网首页
如何优雅的实现 电商类促销倒计时(1天:12:时33:分)

如何优雅的实现 电商类促销倒计时(1天:12:时33:分)

作者: 姚姚先生 | 来源:发表于2017-04-25 19:40 被阅读312次

最近公司电商app要搞一波 促销大放送,要我们在某些商品上面放置促销倒计时,我们都知道商品首页展示着不同的商品(cell), 并不是每个cell上面所有定时器倒计时如图:

遇到需求莫慌,仔细分析,首先要做的是先把界面展示出来,定时器之后加上,一步一步来,cell的展示大家都轻车熟路了我就不逼逼了,下面要做的就是怎么放置一个促销倒计时了,蛋疼的我并没有着急自己定义定时器,而是去GitHub上面各种撸代码,终于找到一个定时器让我眼前一亮,附上传送阵 cell上放置定时器实现促销倒计时
其他我就不多说了,主要思想就是打开定时器的同时定义一个int变量,没秒加1,这样的话,我们赋值的时候只需要拿到促销结束时间减去这个int变量就是每个时刻需要展示的倒计时,附上代码

- (void)countDownNotification {

    /// 这个就是这个定时器开始的时候定义的变量
    NSInteger timeInterval = kCountDownManager.timeInterval;
    self.countDown2 = self.second - timeInterval
        if (self.countDown2 < 0) return;
        /// 重新赋值
        //NSLog(@"timeInterval forTwenty  === %zd",timeInterval);
        
        self.houL.text = [NSString stringWithFormat:@"%02zd", self.countDown2/3600];
        self.minL.text = [NSString stringWithFormat:@"%02zd",(self.countDown2/60)%60];
        self.secL.text = [NSString stringWithFormat:@"%02zd",self.countDown2%60];
  

这样就能在界面上给每个label赋值了-小时:分钟:秒数,这一切搞定后高兴地滑动列表,呵呵了,

当第一个带定时器的cell滑动离开手机屏幕的后,再回退,发现定时器不见了,坐下想了一下发现原来是老生常谈的问题--cell的重用问题,因为带定时器的cell复用的时候回用到没有定时器的cell,后果可想而知,不过我早有对策,传送阵走起来如何优雅的解决cell重用问题,完美解决,与君共勉.

教你快速上手--NSTimer

相关文章

网友评论

      本文标题:如何优雅的实现 电商类促销倒计时(1天:12:时33:分)

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