15
Hay bastantes publicaciones tocando este tema. Pensé que debería hacer esta simple pregunta con la esperanza de aclarar esto.¿Cómo puede un botón obtener el foco?
No puedo lograr establecer el foco en un botón. Sé que probablemente me pierdo algo fundamental. Este es el diagrama simple:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
android:focusable="true" />
</LinearLayout>
El siguiente es el código simple en onCreate():
Button button = (Button)findViewById(R.id.button1);
button.setFocusable(true);
button.requestFocus();
button.setText("Debug"); //Just to show the code here has been executed
Simplemente no funciona (es decir, el botón no obtener el foco).
Cualquier corrección de mi error o malentendido será muy apreciada.
El botón tendrá Enfoque de lo contrario también, pero que no lo veo. El foco visual está solo en [ModoToma] (http://android-developers.blogspot.de/2008/12/touch-mode.html) – zapl
Gracias a todos por la rápida respuesta y aclaración. Aparentemente no entendí qué significa "enfoque" en el contexto particular. Ahora me pregunto qué utilidad tiene obtener un botón para enfocarse sin mostrarlo. – Hong
Supongamos que tiene un teclado conectado a su dispositivo (como el emulador) o que tiene un dispositivo con un d-pad y pulsa enter/click dpad. Lo que sea que tenga el foco se llama ahora. Si solo usas tu aplicación con los dedos, generalmente puedes ignorar el enfoque. – zapl