2012-07-27 49 views
0

我有一個EditText在應用程序。當我通過軟鍵盤按兩次space鍵時,應該在EditText中插入一段時間。如何插入一段時間?

我該怎麼做?

+0

你有沒有試過,可以請你發佈一些你以前試過的代碼。 – Vinay 2012-07-27 05:23:36

回答

0

addTextChangedListenerEditText。併爲它覆蓋afterTextChanged()方法。 現在EDITTEXT的文本檢查" "(雙空間),如果它僅僅包含"."

喜歡的東西代替它,

final EditText edit = (EditText) findViewById(R.id.editText); 
edit.addTextChangedListener(new TextWatcher() 
{ 
@Override 
public void afterTextChanged(Editable editable) 
{ 
    if (editable.toString().contains(" ")) 
    { 
    edit.setText(ed.getText().toString().trim()); 
    edit.append("."); 
    } 
} 
}); 
+0

手段?我沒有得到你.. – user370305 2012-07-27 06:20:04

+0

我會告訴你..我想你的代碼 – 2012-07-27 06:23:51

+0

somthing如果edittext是空的然後按空格兩次點「。」不應該來。如果不是空的,則應該按空格鍵「。」 – 2012-07-27 10:25:14

0

嘗試InputFilter。 這些給你設施,檢查輸入到你的EditText什麼文字。 因此,如果您檢測到兩次空間(爲了您可以製作計數器),您可以修剪文本追加。並再次顯示。

您可以根據您的需要更改以下代碼。

InputFilter filter=new InputFilter() { 

     @Override 
     public CharSequence filter(CharSequence source, int start, int end, 
       Spanned dest, int dstart, int dend) { 
      // TODO Auto-generated method stub 
      for (int i = start; i < end; i++) 
       { 
        if(Character.isSpace(source.charAt(i))) 
         { 
         return " "; 
         } 
        else if (!Character.isLetter(source.charAt(i))) 

        { 
          return ""; 
        } 
       } 
      return null; 
     } 
    }; 


edittext.setFilters(new InputFilter[]{filter}); 
0

你怎麼樣讓一對夫婦布爾值,添加監聽到的意見並將它們設爲真,以便輸入,假設無輸入。 - >如果用戶按下不允許的鍵,則全部設置爲false。否則,當他們都是真實的,做你需要的東西。 如果您想要,您可以添加檢查訂單的邏輯。