3

複数行の編集テキストからテキストを取得しています。このテキストで改行文字を識別する必要があります。どうやってするの?

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

falseを返します。

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;

        }

    });

注:イベントを処理したことをOSに通知する場合はtrueを返し、それ以外の場合はfalseを返します。(しかし、あなたのシナリオを考えると、私はあなたがfalseを返したいと思うでしょう)

于 2012-06-28T12:48:55.483 に答える