Actuellement, j'ai une mise en page qui contient un Button
, un TextView
et un EditText
. Lorsque la mise en page est affichée, le focus est automatiquement placé sur les EditText
, ce qui déclenche l'affichage du clavier sur un téléphone Android. Ce n'est pas ce que je veux. Est-il possible de régler le focus sur TextView
ou sur rien lorsqu'une mise en page est affichée? Merci.
Réponses
Trop de publicités?
mbaird
Points
31293
Définir le focus: Le framework gérera le déplacement du focus en réponse aux commentaires de l'utilisateur. Pour forcer le focus sur une vue spécifique, appelez requestFocus ()
Charles Mosndup
Points
206
user256239
Points
3579
J'ai essayé requestFocus (), mais cela ne fonctionne pas. Voir le code ci-dessous:
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LinearLayout mainVw = (LinearLayout) findViewById(R.id.main_layout);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
EditText edit = new EditText(this);
edit.setLayoutParams(params);
mainVw.addView(edit);
TextView titleTv = new TextView(this);
titleTv.setText("test");
titleTv.setLayoutParams(params);
mainVw.addView(titleTv);
titleTv.requestFocus();
}
}
La mise au point passe toujours à EditText lorsque la page est affichée. Comment faire pour que le focus soit sur le TextView?
ravi
Points
21
abeljus
Points
111