2011-08-26 7 views
0

현재 응용 프로그램에서 한 가지 문제가 있습니다. 하나의 editText가 있고 XML 파일에서 Enables = false로 설정했습니다. EDIT와 DONE이라는 이름의 버튼이 있습니다.안드로이드 EditTExt 쿼리

문제.

응용 프로그램이 시작되면 제대로 작동합니다. EditText는 포커스가 없으며 editext 키보드를 클릭하면 편집 텍스트에서 텍스트를 편집 할 수 있습니다.

if(v==Edit) 
    { 
     //PurchaseAddressdata.setFocusable(true); 
     Edit.setVisibility(Button.INVISIBLE); 
     done.setVisibility(Button.VISIBLE); 
     PurchaseAddressdata.setClickable(true); 
     PurchaseAddressdata.setEnabled(true); 
     PurchaseAddressdata.setCursorVisible(true); 
      PurchaseAddressdata.setSelection(PurchaseAddressdata.getText().length()); 

    } 
    if(v==done) 
    { 
     Edit.setVisibility(Button.VISIBLE); 
     done.setVisibility(Button.INVISIBLE); 
     PurchaseAddressdata.setCursorVisible(false); 
     PurchaseAddressdata.setClickable(false); 



    } 

그러나 editext 키보드가 나타나면 문제가 발생합니다. 편집 버튼을 누르면 키보드 만 나타납니다.

감사

답변

0

설정이로 편집 텍스트 필드의 onFocusChangeListener 리스너에 초점을 맞춘 때 키보드 숨 깁니다 있도록.

boolean display_keyboard = false; 
edittext.setOnFocusChangeListener(new OnFocusChangeListener() 
{ 

    public void onFocusChange(View view, boolean arg1) 
    { 
     if (!display_keyboard) 
     { 
      InputMethodManager imm = (InputMethodManager) this.getSystemService(Context.INPUT_METHOD_SERVICE); 
      imm.hideSoftInputFromWindow(view.getWindowToken(), 0); 
     } 
    } 
}); 

편집 버튼을 클릭하면 다음, displaykeyboard = true;를 설정하고 나를 위해 작동이 코드를하려고 다시 글고

+0

그게 일어나지 않는 그 .. –

+0

그 일어나지 않는 사랑하는 .. –

0

에 포커스를 이동합니다.

editText.setInputType (0);

및 온 클릭()

editText.setInputtype (InputType.TYPE_CLASS_TEXT)에

;