2014-04-25 16 views
5

Mam kontener, w którym chcę dodać dynamicznie EditText. Muszę ustawić dwa i IME_FLAG_NO_EXTRACT_UI w tym samym czasie, ale mam problem, jak to zrobić programowo. Moje rozwiązanie zastępuje moje imeOptions (teraz to jest dobre zachowanie :) ale próbuję wszystkiego)Jak ustawić programowo kilka opcji

I moje drugie pytanie: Jak ustawić ostrość po utworzeniu EditText programowo? Ta metoda nie działa dla mnie. Chcę otworzyć klawiaturę po postCardContainer.addView(editText);

postCardContainer.setOnTouchListener(new View.OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 

      FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); 
      params.topMargin = (int) event.getY()-50; 
      params.leftMargin = (int) event.getX()-50; 

      EditText editText = new EditText(NewPostcardActivity.this); 
      editText.setSingleLine(); 
      editText.setBackgroundResource(R.color.transparent); 
      editText.requestFocus(); 
      editText.setLayoutParams(params); 
      editText.setCursorVisible(true); 
      editText.setImeOptions(EditorInfo.IME_ACTION_DONE); 
      editText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI); 

      postCardContainer.addView(editText); 

      return false; 
     } 
    }); 

Dzięki

+0

Możliwy duplikat-http: //stackoverflow.com/questions/17501426/android-imeoptions-change-programmatic –

+0

Nie, chcę ustawić IME_ACTION_DONE i IME_FLAG_NO_EXTRACT_UI na jednej EditText nie rozróżnianie obiektów. Dwa atrybuty na jednym obiekcie. – kazhiu

+0

Możliwe duplikaty http://stackoverflow.com/questions/3459168/imeoptions-actionnext-programmatically-how-to-jump-to-next-field –

Odpowiedz

6

Spróbuj jak poniżej.

editText.setImeOptions(EditorInfo.IME_ACTION_DONE | EditorInfo.IME_FLAG_NO_EXTRACT_UI); 
+0

Dzięki, działa idealnie :) – kazhiu

Powiązane problemy