V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
tuoxie007
V2EX  ›  iDev

一个iOS 7 日历 风格的日期选择器 HSUDatePicker,大家看看有哪些改进之处

  •  
  •   tuoxie007 ·
    tuoxie007 · 2013-10-17 12:36:05 +08:00 · 4641 次点击
    这是一个创建于 4056 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Source: https://github.com/tuoxie007/HSUDatePicker

    https://github.com/tuoxie007/HSUDatePicker/raw/master/1.png

    现在功能单一,样式也无法定制,日后想增加一些功能,可灵活定制样式。

    欢迎有经验的同学提提意见。
    12 条回复    1970-01-01 08:00:00 +08:00
    yeahren
        1
    yeahren  
       2013-10-17 13:38:08 +08:00
    nice job, dude !
    sobigfish
        2
    sobigfish  
       2013-10-17 17:01:35 +08:00   ❤️ 1
    feature request -- 农历?多选?限制可选日期?
    so898
        3
    so898  
       2013-10-17 23:02:05 +08:00
    我觉得比起用年,用NSDate来划分区间更好
    再一个是要是能切换周日为首或者周一为首就好了,国人一般都是从周一开始算一周的吧……
    UICollectionViewController,iOS 6+指定咯……那为啥还有dealoc……iOS 6+一般都是ARC的吧……你这代码应该也是ARC的啊……
    话说最后面两个inline方法能去掉不?毕竟是个开源项目,怕和其他部分定义的方法名冲突啊

    不要说我站着说话不腰疼……是楼主你要提意见的……闪人……
    Hysteria
        4
    Hysteria  
       2013-10-18 01:54:08 +08:00   ❤️ 2
    @so898 898兄,又见。dealloc方法在ARC下也是可以实现的,但是在其内不能调用[super dealloc],一般用来做remove observer,target等等之类的工作也。
    so898
        5
    so898  
       2013-10-18 09:24:39 +08:00   ❤️ 1
    @Hysteria 高端先进洋气,不过dealloc真心不喜欢看到……
    zhigang1992
        6
    zhigang1992  
       2013-10-18 10:33:33 +08:00 via iPad
    像-viewDidLoad,或者-viewWillAppear里面,我们应该把super call放在最前面还是最后面。为啥?
    kinoAndWorld
        7
    kinoAndWorld  
       2013-10-18 11:00:55 +08:00   ❤️ 1
    @zhigang1992 如果是构造或者初始化,先父后子。析构或者清理反之。
    tuoxie007
        8
    tuoxie007  
    OP
       2013-10-18 11:34:03 +08:00
    @so898
    @Hysteria 谢谢
    在dealloc里把_date设为nil是为了躲ios6里有可能的有一个bug,成员变量(不是property)有时不会被回收,不知道是不是我写的不好,请指教
    在dealloc里remove observer这个很正常的用法吧,这个@so898就别那么洁癖了吧,当然不用也行,我已经把它移到viewWillDisappear里了
    inline方法这个说的有道理,我先移到class里去了
    tuoxie007
        9
    tuoxie007  
    OP
       2013-10-18 11:37:06 +08:00
    @kinoAndWorld
    @zhigang1992 从API上讲,我觉得无所谓,我的习惯是一般是will先父后子,did先子后父,不过有时写代码的时候不太注意
    kinoAndWorld
        10
    kinoAndWorld  
       2013-10-18 11:44:18 +08:00
    @tuoxie007 好吧~有时候先后顺序无关紧要。will其实不写super也没事,但是从逻辑来说是有个顺序的,这个一般自己写的类的继承会体现比较明显

    PS:我看了一下你写的日历,可以学习的地方很多~赞一个。
    如果点击非日期数字的空白处貌似会崩溃,你看一下
    tuoxie007
        11
    tuoxie007  
    OP
       2013-10-18 11:45:06 +08:00
    @kinoAndWorld 谢谢,我刚才已经改过了,哈哈
    Hysteria
        12
    Hysteria  
       2013-10-18 12:26:03 +08:00
    @tuoxie007 绝绝谈不上指教= - =,你水平绝对比我高多了,我发现我早就follow你了,这个项目先star了,以后说不定会用到。你说的bug我都没有遇到过,所以就没研究过了。另外,我个人觉得init跟dealloc要配对,appear跟disappear要配对,如果在disappear里面做remove的话,可能就需要在需要在appear里add了,可能稍微强迫症了的点。话说,说的都是细枝末节,最后赞一下你的项目。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   868 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 76ms · UTC 21:53 · PVG 05:53 · LAX 13:53 · JFK 16:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.