Ho il contenitore FrameLayout
in cui voglio aggiungere dinamicamente EditText
. Ho bisogno di impostare due imeOptions
: IME_ACTION_DONE
e IME_FLAG_NO_EXTRACT_UI
in questo stesso tempo, ma ho problemi a come farlo a livello di programmazione. La mia soluzione sovrascrive il mio imeOptions
(che ora è un buon comportamento :) ma provo tutto)Come impostare alcune imeOptions in modo programmatico
E la mia domanda secolare: come impostare lo stato attivo dopo aver creato EditText a livello di codice? Questo metodo editText.requestFocus();
non funziona per me. Voglio aprire tastiera dopo 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;
}
});
Grazie
Possibile -http duplicato: //stackoverflow.com/questions/17501426/android-imeoptions-change-programmatic –
No, voglio impostare IME_ACTION_DONE e IME_FLAG_NO_EXTRACT_UI su un'EditText non oggetto differente. Due attr su un oggetto. – kazhiu
Possibile duplicato di http://stackoverflow.com/questions/3459168/imeoptions-actionnext-programmatically-how-to-jump-to-next-field –