使libgdx文本字段忽略某些字符?

时间:2014-01-30 14:48:42

标签: java user-interface libgdx textfield

嗨,我遇到了一个问题,我似乎无法解决有关libgdx的TextField问题。我想忽略某些字符,例如当使用“shift”作为大写字符时,不要在文本字段中写入空格。截至目前我写的都是这样的。

accField.setTextFieldListener(new TextFieldListener() {

  public void keyTyped(TextField textField, char c)  {

        if (c == 'a') {
        //Something here that does the replacement maybe?                                


        }


}

});

2 个答案:

答案 0 :(得分:9)

我从未使用过TextFieldFilters,因为我几乎不熟悉libgdx。但据我所知,你这样使用它们:

myTextfield.setTextFieldFilter(new TextFieldFilter() {

    // Accepts all Characters except 'a' 
    public  boolean acceptChar(TextField textField, char c) {
         if (c == 'a')
               return false;
         return true;
    }
});

希望它有所帮助。请告诉我它是否有效,因为我想使用这个TextFieldFilters:P

答案 1 :(得分:0)

您只能将其用于字母数字输入。

myTextfield.setTextFieldFilter(new TextField.TextFieldFilter() {
            // Accepts all Alphanumeric Characters except
            public boolean acceptChar(TextField textField, char c) {
                if (Character.toString(c).matches("^[a-zA-Z]")) {
                    return true;
                }
                return false;
            }
        });