Mac OS 只允许NSTextField输入数字

妖狐艹你老母 2022-12-30 07:49 212阅读 0赞

好久没写文章了,随便凑一个

  1. //重写NSTextField的NumberFormatter
  2. class OnlyIntegerValueFormatter: NumberFormatter {
  3. override func isPartialStringValid(_ partialString: String, newEditingString newString: AutoreleasingUnsafeMutablePointer<NSString?>?, errorDescription error: AutoreleasingUnsafeMutablePointer<NSString?>?) -> Bool {
  4. if partialString.count == 0 {
  5. return true
  6. }
  7. let scanner = Scanner.init(string: partialString)
  8. var intType: Int = 0
  9. if scanner.scanInt(&intType) && scanner.isAtEnd {
  10. return true
  11. }
  12. return false
  13. }
  14. }
  15. //使用方法
  16. NSTextField().formatter = OnlyIntegerValueFormatter()
  17. //其他判断条件也可以这样写,如不允许输入"<"
  18. if partialString.contains("<") {
  19. return false
  20. }

如果有帮助到你可以点个关注

发表评论

表情:
评论列表 (有 0 条评论,212人围观)

还没有评论,来说两句吧...

相关阅读

    相关 控制input允许输入数字

    `` 好多时候我们是希望能设置input只能输入数字;比如说商城选择商品数量;比如说手机号等等; 看了下京东和天猫; 天猫选择商品数量是只能输入数字;而且数量不能小于1;