開發中會遇到輸入字符限制的需求,比如有時候需要禁用emoji的鍵盤,emoji的鍵盤,貌似具體的輸入法有不同的編碼方式,網上有很多禁用emoji的方法,只是經過測試,第三方輸入法如搜狗百度等,都禁用不掉,這個具體的好方法我也沒有找到,誰要是做到了還望能夠賜教一下,感激不盡,現在說一下如何禁用掉系統自己帶的鍵盤的emoji表情,其實很簡單,一般的輸入框,uitextfield或者uitextview,,都有個屬性,就是textmodel,禁用分兩步,
第一步
判斷當前的輸入方式是不是emoij方式,判斷條件如下:[[[UITextInputMode currentInputMode] primaryLanguage] isEqualToString:@"emoji"];返回yes就是代表當前就是emoji模式
第二步
在代理方法中禁用 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string 返回no即可,textview的時候,代理方法爲- (BOOL)textView:(UITextView *)textView
shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text返回NO即可,如上就實現了禁用emoji表情