¿Quieres saber cómo darle función a un botón en Android Studio? No hace mucho te contamos cómo crear un botón en Android Studio, pero ahora veremos cómo darle comportamiento para que haga algo con este tutorial para Android Studio, muy fácil:
Cómo darle función a un botón en Android Studio
Si has llegado hasta aquí, imagino que tendrás tu botón de Android creado como te contamos en el tutorial anterior. Para darle comportamiento o una función, debemos ir a la clase java desde dónde queremos llamarlo.
Un botón en Android puede tener muchas funcionalidades, y puede tratarse también como una imagen que hace algo. Esto mismo lo vemos en el primer ejemplo:
Dar función a una imagen en Android (imageView)

En este caso, queremos que nuestra aplicación tenga una imagen que hace algo.
El siguiente código forma parte del layout.xml, dónde creamos y adaptamos el ImageView al layout.
1 2 3 4 5 |
<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/imageandrea" //nombre que le hemos puesto al botón para luego llamarlo android:src="@drawable/cardandrea"/> //ubicación de la imagen |
Por ejemplo, en la imagen anterior vemos una ficha y una URL. La idea es que si hacemos clic encima se cargue una URL. Esto lo resolvemos con el siguiente código, pero también podríamos aprovecharlo para abrir cualquier otro layout, solo tendríamos que indicarlo en el startActivity();
Este es el código del botón que iría ubicado en nuestra clase.java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
public void onAndrea() { ImageView entry = (ImageView) findViewById(R.id.imageandrea); // cargo la imagen entry.setOnClickListener(new View.OnClickListener() { // hago clic en el botón @Override public void onClick(View v) { Uri uri = Uri.parse("http://www.andreaardions.com/"); //parseo la url Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); //abro la url en una nueva activity } }); } |
Dar función a un elemento de una lista en Android
Si tenemos una lista con elementos, y queremos que al hacer clic en uno de los elementos se abra un nuevo layout (por ejemplo) necesitaremos el siguiente trozo de código, ubicado en un concreto layout.xml. Tenemos una lista normal con unos márgenes, como vemos a continuación:
1 2 3 4 5 6 7 8 |
<ListView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4dp" android:layout_marginEnd="4dp" android:layout_marginStart="4dp" android:id="@+id/list_song" //id de la lista que cargamos android:layout_centerHorizontal="true"/> |
En el código .java, cargamos la lista y al hacer clic en un elemento lo que hacemos es cargar un nuevo activity. Pero no solo esto, sino que también enviamos algunos datos con putExtra, como por ejemplo un ID y un nombre, para que se cargue en el nuevo activity.
Este es el código referente al clic en un elemento de la lista que iría ubicado en nuestra clase.java. Lo hemos tratado como un método clicSong(), por lo que solo tendríamos que llamarlo desde onCreate() para invocarlo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
public void clicSong() { ListView lv = (ListView) findViewById(R.id.list_song); // cargo la lista lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { //hago clic en el elemento de la lista @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { final int pos = position; new Thread(new Runnable() { @Override public void run() { try { Song item = song.get(pos); Intent Song_detail = new Intent(getApplicationContext(), Song_detail.class); Song_detail.putExtra("id", item.getSongId()); Song_detail.putExtra("letter",item.getLetter()); // lanzo el acitivity startActivity(Song_detail); } catch (Exception e) { } runOnUiThread(new Runnable() { @Override public void run() { } }); } }).start(); } }); } |
Como podemos ver, es realmente fácil. Siempre se hace de la misma manera, haciendo la llamada al botón / ImageView o lista y cargando lo que nos interese abrir, bien sea una URL o layout nuevo. El procedimiento ya lo explicamos en el código, pero puedes preguntarnos todas tus dudas si no te funciona.
Botón de atrás en Android Studio
No olvides que también te hemos contado cómo poner el botón de atrás en Android Studio, para que así lo tengamos todo para tener más completa nuestra aplicación Android.
¿Te ha sido útil este tutorial para sobre cómo darle función a un botón en Android Studio? Esperamos que te haya servido tanto este tutorial como nuestros tutoriales Android Studio, porque así podrás crear nuevas funciones en tu código, para hacerlo más completo y cargar nuevos horizontes.
hola , no entiendo la parte del song , puedes incluir el codigo donde poblas la lista.
te lo agradeceria infinitamente
excelente aporte, sera muy util para el desarrollo de apps creado por personas que no estan inmersas en la materia