我想在edittext中输入时给文本赋予样式,例如使文本加粗或斜体。
我知道如何做到这一点后,键入和选择部分文本的帮助下,斯潘纳,但我想这样做,而打字。
例如,单击一个粗体按钮后,我键入的所有内容都是粗体的。
有人能告诉我怎么做吗?

最佳答案

您可以尝试在如下代码中执行此操作:

TextView textView=(TextView)findViewById(R.id.your_textView_id);
SpannableString spanString = new SpannableString(tempString);
spanString.setSpan(new UnderlineSpan(), 0, spanString.length(), 0);
spanString.setSpan(new StyleSpan(Typeface.BOLD), 0, spanString.length(), 0);
spanString.setSpan(new StyleSpan(Typeface.ITALIC), 0, spanString.length(), 0);
textView.setText(spanString);

您可以在按钮的单击侦听器中尝试这些操作来更改EditText内容,然后使其无效
你可以做到:
((EditText) mView.findViewById(R.id.your_edittext)).addTextChangedListener(new TextWatcher() {
    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {

    }

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

    }

    @Override
    public void afterTextChanged(Editable s) {

    }
});

在发短信的任何时候你都可以做到

10-08 11:57