MultiAutoCompleteTextView的多个分隔符?

时间:2011-03-29 23:28:05

标签: android tokenize

我正在使用MultiAutoCompleteTextView,它显示用户输入的建议。它仅在项目被一个或多个空格分隔时起作用,但是当新行(即按下“enter”按钮)是分隔符时不起作用。

到目前为止的代码(我想我之前从stackoverflow得到了它):

公共类SpaceTokenizer实现Tokenizer {

@Override
public int findTokenStart(CharSequence text, int cursor) {
    int i = cursor; 
    while (i > 0 && text.charAt(i - 1) != ' ') {
        i--;
    }
    while (i < cursor && text.charAt(i) == ' ') {
        i++;
    }   
    return i;
}

@Override
public int findTokenEnd(CharSequence text, int cursor) {
    int i = cursor;
    int len = text.length();

    while (i < len) {
        if (text.charAt(i) == ' ') {
            return i;
        } else {
            i++;
        }
    }   
    return len;
}

@Override
public CharSequence terminateToken(CharSequence text) {
    int i = text.length();

    while (i > 0 && text.charAt(i - 1) == ' ') {
        i--;
    }   
    if (i > 0 && text.charAt(i - 1) == ' ') {
        return text;
    } else {
        if (text instanceof Spanned) {
            SpannableString sp = new SpannableString(text + " ");
            TextUtils.copySpansFrom((Spanned) text, 0, text.length(),
                    Object.class, sp, 0);
            return sp;
        } else {
            return text + " ";
        }
    }
}

}

我试图实现像“... || text.charAt(i)=='\ n'...”这样的东西,我认为合适,但那不起作用。

所以我非常感谢您的建议!

1 个答案:

答案 0 :(得分:0)

我的问题的答案可以在这里找到: Android and the CommaTokenizer