我想在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) {
}
});
在发短信的任何时候你都可以做到