3

我从多行编辑文本中获取文本。我需要在此文本中识别换行符。怎么做?

s.toString().contains("\\n")

返回假。

4

3 回答 3

4

有一个错字。它应该是:

s.toString().contains("\n")
于 2012-06-28T12:40:24.750 回答
0

尝试:

for(int i=0; i<-s.toString().length()-1; i++)
{
if(s.toString().charAt(i)=='\\n') 
    { 
      Log.i("NEW LINE?", "NEW LINE");
    }

}

use .contains("\n")作为

if(s.toString().contains("\n")==true)
{
Log.i("NEW LINE?", "NEW LINE");
}
else
{
Log.i("NOT NEW LINE", "NOT NEW LINE");
}
于 2012-06-28T12:42:42.790 回答
0

我通常通过在 EditText 上定义一个 KeyListener 来做到这一点。

每当您检测到换行符时,您都可以在代码中做任何您想做的事情。

userIdInput.setOnKeyListener(new View.OnKeyListener() {
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if ((keyCode == KeyEvent.KEYCODE_ENTER)  {

           // the enter key has been pressed. Do whatever you want to!

            }
            return false;

        }

    });

注意:如果您想告诉操作系统您已经处理了事件,则返回 true ,否则返回false。(但考虑到你的情况,我想你会想要返回 false)

于 2012-06-28T12:48:55.483 回答