如何在Android中的EditText中输入每个新行的子弹?

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

我有一个EditText,每次用户切换到新行时我都需要插入一个项目符号。

示例输出将是:

*一个 * b *C

到目前为止,我已经尝试了以下代码:现在我如何为新行添加或连接bullet符号

edtdescription.setOnKeyListener(this);

    @Override
public boolean onKey(View v, int keyCode, KeyEvent event) {

    // TODO Auto-generated method stub

    // Listen to "Enter" key press
    if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER))
    {

        return true;
    }
    return false;
}
android android-edittext
1个回答
-1
投票

您需要在编辑文本上附加文本观察器,如果找到新行,则只需检查每个字符更新,然后在字符串中添加项目符号编码字符串“\ u2022”。它将在编辑文本中显示为子弹。

textwatcher用于查找新行

chatInputET.addTextChangedListener(new TextWatcher() {
  @Override
  public void onTextChanged(CharSequence s, int start, int before, int count) {
    String string = s.toString();
    if (string.length() > 0 && string.charAt(string.length() - 1) == '\n') {
      // concatenate your string with bullet here. 
    }
  }
});
© www.soinside.com 2019 - 2024. All rights reserved.