ios - Swift : textField可输入的长度为4个汉字或者8个字符。咋判断
大家讲道理
大家讲道理 2017-04-18 09:24:15
0
4
343
        if self.tf.text?.characters.count > 4 {
            Tool.alertUser("昵称最多4个汉字,或者8个字符;数字,字母占一个字符,汉字占2个字符")
            return
        }

汉字最多4个,但是有人用英文名,只有4个字母明显不够,这咋办?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回覆(4)
刘奇

雷雷

小葫芦
  • 首先,一個漢字並不是一定佔 2 個位元組。

  • 其次,你可以嘗試透過 String().utf8.count 控制長度。

  • 最後,你也可以透過正規表示式來控制。

迷茫

我看過好多輸入框都是按字節計數的。

洪涛

我感覺題主的問題應該這樣解決,雖然漢字可能佔3個字符,但是我們"認為"是兩個字符,目的是控制中英文暱稱長度,而不是為了utf8長度
所以應該判斷if( a > 0x4e00 && a 但是目前都不這麼費力,直接統一限制一個值就好了,比如10就不錯

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板