带有可编辑部分的TextView

问题描述 投票:1回答:1

我希望有一个TextView,其中可以编辑某些“空白”,但其余部分是恒定的。我知道这对于前缀和后缀很容易,但是就我而言,大多数文本都是固定的,可编辑部分可以在任何地方。

我计划解析这样的文本(稍长一些:):

Blah blah blah ______ text text
text _____ text text blah blah

这会创建一个像TextView的视图,但是带有下划线的部分应该是可编辑的。

SDK中是否有某种View可以帮助我解决这个问题?如果没有,我将如何实施呢?

android android-edittext
1个回答
0
投票

EditTextTextView。使用TextView

textView.setCursorVisible(true);
textView.setFocusableInTouchMode(true);
textView.setInputType(InputType.TYPE_CLASS_TEXT);
textView.requestFocus(); //triggers soft keyboard to show up

然后添加TextWatcher

textView.addTextChangedListener(new TextWatcher() {

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        // This method is called to notify you that, within s, the count characters beginning at start are about to be replaced by new text with length after.
    }

    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {

        // 
    }

    @Override
    public void afterTextChanged(Editable s) {

        // 
    }
});

然后您可以将字符设置为固定或空白。

© www.soinside.com 2019 - 2024. All rights reserved.