ios – 如何设置UITextField的字母间距

ios – 如何设置UITextField的字母间距,第1张

概述我有一个应用程序,用户必须键入一个四位数的引脚代码.所有数字必须距离彼此设定的距离. 如果PinTextField是UIView的子类,是否有办法?我知道在ViewController中,您可以使用UITextFieldTextDidChangeNotification,并为每次更改设置归因文本.通知在UIView中似乎不起作用. 另外我想知道如果你想设置一个UITextField文本的字母间距, 我有一个应用程序,用户必须键入一个四位数的引脚代码.所有数字必须距离彼此设定的距离.

如果PinTextFIEld是UIVIEw的子类,是否有办法?我知道在VIEwController中,您可以使用UITextFIEldTextDIDChangeNotification,并为每次更改设置归因文本.通知在UIVIEw中似乎不起作用.

另外我想知道如果你想设置一个UITextFIEld文本的字母间距,是不是比每个更新的属性字符串更简单的方法?

正确间距:

间距错误

解决方法 这是最终为每一个变化而设定的核心
textFIEld.addTarget(self,action: "textFIEldDIDChange",forControlEvents: .EditingChanged)    func textFIEldDIDChange () {            let attributedString = NSMutableAttributedString(string: textFIEld.text)        attributedString.addAttribute(NSKernAttributename,value: 5,range: NSMakeRange(0,count(textFIEld.text)))        attributedString.addAttribute(NSFontAttributename,value: Font,count(textFIEld.text)))        attributedString.addAttribute(NSForegroundcolorAttributename,value: UIcolor.blackcolor(),count(textFIEld.text)))        textFIEld.attributedText = attributedString    }    func textFIEld(textFIEld: UITextFIEld,shouldChangeCharactersInRange range: NSRange,replacementString string: String) -> Bool {        if count(textFIEld.text) < 4 {            return true            // Else if 4 and delete is allowed        }else if count(string) == 0 {            return true            // Else limit reached        }else{            return false        }    }

然而,问题依然存在,因为不同的数字有不同的宽度,我只是回到为每个数字制作一个UITextFIEld.

总结

以上是内存溢出为你收集整理的ios – 如何设置UITextField的字母间距全部内容,希望文章能够帮你解决ios – 如何设置UITextField的字母间距所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1112268.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存