V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
posthoc
V2EX  ›  程序员

一个未完成的 V2EX 客户端和因它而生的开源库们

  •  
  •   posthoc · 2020-08-24 19:01:29 +08:00 · 1977 次点击
    这是一个创建于 1560 天前的主题,其中的信息可能已经有所发展或是发生改变。

    XE2V 是一个 iOS 端的 V2EX 客户端,做为我的第一个项目,它寄予了我的很多期望,奈何水平不足,又是重度拖延症患者,以至于直到现在它还远没有完成。不过,它却成了一只下蛋的鸡,已经为我贡献了三个库,还有一两个(也可能更多)库正在完善中。没错,我是来推广我写的库的😁:

    YLRefreshKit:一般我们的刷新操作是分散在各个页面的,使用这个库可以将刷新操作统一在一起,它还实现了自动刷新的功能。

    YLExtensions:它简化了 UITableView 和 UICollectionView 的注册及配置过程。

    YLStateMachine:这是一个简单的状态机。

    还是提一下项目吧。要说它有什么特别的地方,嗯,我也用过几款 iOS 端的 V2EX 客户端,它们都不能很好的处理“回复”中的图片。我的项目解决了这个问题,让图片不仅可以正确展示,还能点击查看,大概也算是一个特色?当下一个库写好之后,我会依据它来重构 XE2V,然后就把项目放在我的 GitHub 上面。虽然项目功能还非常非常简陋,但就像图片问题一样,它也许能在某些方面给 V2EX 客户端的开发者或其他 iOS 开发者提供些微参考,这就足够了。

    12 条回复    2020-08-25 11:40:31 +08:00
    fffang
        1
    fffang  
       2020-08-24 19:07:52 +08:00
    状态机是干嘛的
    woodensail
        2
    woodensail  
       2020-08-24 19:11:31 +08:00
    @fffang 处理状态管理和转移逻辑的东西,适用于业务场景复杂的地方,但是不适用于业务场景特别复杂的地方。
    fansangg
        3
    fansangg  
       2020-08-24 19:12:17 +08:00
    可以,精力很旺盛,还会造轮子
    xtx
        4
    xtx  
       2020-08-24 19:14:50 +08:00 via iPhone
    您就是 LGD 粉丝?
    posthoc
        5
    posthoc  
    OP
       2020-08-24 19:16:28 +08:00 via iPhone
    @fansangg 😄,开始写的时候根本没考虑过造轮子,这些库是在一遍遍重写项目的过程中提炼出来的。
    posthoc
        6
    posthoc  
    OP
       2020-08-24 19:17:02 +08:00 via iPhone
    @xtx LGD 是什么?
    posthoc
        7
    posthoc  
    OP
       2020-08-24 19:18:42 +08:00 via iPhone
    YL 是“玉垒浮云”前两个字的首字母,至于“玉垒浮云”这个名字来自杜甫的一首诗。
    xtx
        8
    xtx  
       2020-08-24 19:20:39 +08:00 via iPhone
    @posthoc #6 lol 圈内 lgd 战队的反向梗…
    posthoc
        9
    posthoc  
    OP
       2020-08-24 19:32:22 +08:00 via iPhone
    @xtx 谢谢
    fffang
        10
    fffang  
       2020-08-25 09:38:14 +08:00
    @woodensail 我不懂 swift,所以没看你的代码。那状态机的作用就是在状态发生变化的时候,抛回调出去,是这样吗?
    woodensail
        11
    woodensail  
       2020-08-25 09:39:45 +08:00
    @fffang @错人了,我不是楼主,我只是告诉你状态机这个东西一般用来处理什么业务而已。
    posthoc
        12
    posthoc  
    OP
       2020-08-25 11:40:31 +08:00
    @fffang 状态机会自动改变状态。当一个定义动作被触发时,状态机会调用我们自定义的处理状态变化的函数,然后根据实际情况改变状态。第一个库 YLRefreshKit 正是应用了状态机才实现了聚合并自动化刷新操作的功能。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2799 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:35 · PVG 19:35 · LAX 03:35 · JFK 06:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.