fancymax
V2EX  ›  Swift

分享自己写的 OS X 上的小控件-AutoCompleteTextField for OS X(Swift)

  •  1
     
  •   fancymax ·
    fancymax · Dec 24, 2015 · 4220 views
    This topic created in 3825 days ago, the information mentioned may be changed or developed.

    AutoCompleteTextField

    AutoCompleteTextField for OS X(Swift)

    URL

    https://github.com/fancymax/AutoCompleteTextField

    Demo

    支持全拼、简拼、汉字
    demo

    Supplement 1  ·  Dec 24, 2015

    AutoCompleteTextField 是基于 NSTextField 实现的自动补齐控件,我给出的 Demo 示例通过这个控件实现类似 12306 网站上选择始发站 /终点站的功能。

    原理也比较简单:
    1. 捕捉用户的 keyup 事件来增加智能提示逻辑。
    2. 识别用户按下的键值,弹出 popover ,给出智能提示,比如用户按下 s h ,则给出提示 “上海”
    3. 当用户按下 enter 键,则把提示值输出到 TextField 的显示框上。

    通过写这个控件,我可以学习到哪些?
    1. 了解 Cocoa 控件体系的继承层级。
    2. 了解 Cocoa 中的 delegate 模式(主程序与 AutoCompleteTextField 之间通过 delegate 模式解除耦合)。

    2 replies    2015-12-24 14:30:29 +08:00
    MrX
        1
    MrX  
       Dec 24, 2015
    加了一个星,谢谢分享
    fancymax
        2
    fancymax  
    OP
       Dec 24, 2015
    控件在处理 Tab 的时候还有一点问题,大家如果有兴趣的话,帮忙看看,怎么处理比较好~~
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2885 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 08:59 · PVG 16:59 · LAX 01:59 · JFK 04:59
    ♥ Do have faith in what you're doing.