Imagen de la imagen del botón de Android en el centro y el texto en la parte inferior
Quiero colocar la imagen en el centro y el texto justo debajo de él en un botón, traté de establecer android: la gravedad, pero no podía establecerlo correctamente, aquí está la imagen adjunta:
- ¿Cómo centrar el texto horizontal y verticalmente en un TextView en Android?
- Cómo obtener la altura y el ancho de un texto con Canvas
- Brillante texto en el botón con fondo transparente en la disposición con otro fondo
- El botón se mueve al agregar texto de varias líneas
- Problema de recorte de texto de Android con EditView dentro de un TableLayout
Abajo está mi xml:
<?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" android:paddingLeft="10.0dip" android:paddingTop="10.0dip" android:paddingRight="10.0dip" android:paddingBottom="10.0dip" android:background="@drawable/background_img" > <LinearLayout android:layout_height="0dp" android:layout_width="match_parent" android:layout_weight="1" android:orientation="horizontal" android:paddingLeft="10.0dip" android:paddingTop="10.0dip" android:paddingRight="10.0dip" android:paddingBottom="10.0dip" > <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" android:id="@+id/button_listen" android:text="@string/listen" android:drawableTop="@drawable/listen_btn" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:layout_gravity="center" /> <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" android:id="@+id/button_gallery" android:text="@string/gallery" android:drawableTop="@drawable/gallery_btn" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:layout_gravity="center" /> </LinearLayout> <LinearLayout android:layout_height="0dp" android:layout_width="match_parent" android:layout_weight="1" android:orientation="horizontal" android:paddingLeft="10.0dip" android:paddingTop="10.0dip" android:paddingRight="10.0dip" android:paddingBottom="10.0dip" > <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" android:id="@+id/button_play" android:text="@string/play" android:drawableTop="@drawable/play_btn" android:layout_marginLeft="10dp" android:layout_gravity="center" android:layout_marginRight="10dp" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" /> <Button android:layout_height="match_parent" android:layout_width="0dp" android:layout_weight="1" android:id="@+id/button_find" android:text="@string/find" android:drawableTop="@drawable/test_btn" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:layout_gravity="center" /> </LinearLayout> </LinearLayout>
¿Cuál es la forma correcta de centrar la imagen y el texto debajo?
Muchas gracias de antemano.
- Canvas.drawText (...) no imprime linebreak
- Cómo resuelve la forma redonda rect demasiado grande para ser representada en una textura en android TextBox
- Cómo dibujar con una fuente predeterminada de Android en una lona?
- Cómo agregar el título del botón en el botón de imagen
- Cómo obtener líneas máximas de texto
- Android: mover el texto del botón a la parte inferior
- Cómo configurar una fuente en particular para un texto de botón en android?
- Reducir el relleno de texto dentro de un botón
Pruebe este su trabajo para mí
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="151dp" android:onClick="onClick" android:drawableTop="@drawable/ic_launcher" android:text="Button" /> </RelativeLayout>
Intente cambiar el botón a LinearLayout y utilice mismo onclicklistener en fakebutton
<LinearLayout android:id="@+id/fakeButton" android:layout_width="0dp" android:layout_height="fill_parent" android:layout_weight="1" android:gravity="center_vertical|center_horizontal" android:orientation="vertical" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/icon_big_evento" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/menu_about" /> </LinearLayout>
He seguido los comentarios de DjHacktorReborn y he hecho el diseño, aquí está el congelado
<?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:background="@drawable/background_img" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:orientation="vertical" android:weightSum="10" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="4.1" android:orientation="vertical" > </LinearLayout> <TableLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="2" android:orientation="horizontal" android:stretchColumns="*" > <TableRow android:layout_weight="1" > <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" > <Button android:id="@+id/button_listen" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerInParent="true" android:background="@drawable/main_list" android:paddingTop="90dp" android:text="@string/listen" android:textStyle="bold" android:textColor="#FFFFFF" /> <ImageView android:id="@+id/main_icon_content_image_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@drawable/listen_btn" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" > <Button android:id="@+id/button_gallery" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/main_list" android:paddingTop="90dp" android:text="@string/gallery" android:textStyle="bold" android:textColor="#FFFFFF" /> <ImageView android:id="@+id/main_icon_schedule_image_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@drawable/gallery_btn" /> </RelativeLayout> </TableRow> <TableRow android:layout_weight="1" > <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" > <Button android:id="@+id/button_play" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/main_list" android:ellipsize="marquee" android:paddingTop="90dp" android:text="@string/play" android:textStyle="bold" android:textColor="#FFFFFF" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@drawable/play_btn" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" > <Button android:id="@+id/button_find" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/main_list" android:paddingTop="90dp" android:text="@string/find" android:textStyle="bold" android:textColor="#FFFFFF" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@drawable/test_btn" /> </RelativeLayout> </TableRow> </TableLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="4.1" android:orientation="vertical" > </LinearLayout> </LinearLayout> </LinearLayout>
Aquí está el resultado actualizado
Gracias por las sugerencias
- Android: definiendo colores haciendo referencia a otros colores definidos
- Cómo utilizar la autenticación Digest en android?