cocos2d-x3.2 為UITextField輸入框加入限制輸入內容功能

因為開發編輯器遇到這個問題 輸入id的輸入框要限制不能輸入文字
順手改了下 有需要的可以參考, 具體只加入一個callback 少少幾行

CCTextFieldTTF.h

public:加入
void setFilterInsertTextCB(const std::function<bool(std::string now, std::string insert)>& callback) { _filterInsertTextCB = callback; } //user-defined filtering
private:加入
std::function<bool(std::string now, std::string insert)> _filterInsertTextCB = nullptr;

CCTextFieldTTF.cpp

TextFieldTTF::TextFieldTTF() 添加
, _filterInsertTextCB(nullptr)

void TextFieldTTF::insertText(const char* text, size_t len)查找 if(len >0)在下面加入
if (len > 0)
{
if (_filterInsertTextCB && !_filterInsertTextCB(_inputText, insert))//user-defined filtering
return;

完成, 如此就可以為輸入的文字做一個自定義的過濾 看是regular expression或簡單的字元判斷

不错的功能。:801::801::801: