2012-09-04 10 views
24

Quiero repetir la imagen con ImageView con RelativeLayout. ¿Es posible usar el mapa de bits xml y usar el modo de mosaico "repeat" con RelativeLayout, porque lo que he visto cosas en Internet están relacionadas con LinearLayout.Repetir imagen con ImageView en RelativeLayout

Cualquier ayuda o sugerencia será bienvenida.

Respuesta

62

Crear un archivo XML denominado fondo de Disponibles carpeta

background.xml

<?xml version="1.0" encoding="utf-8"?> 
<bitmap xmlns:android="http://schemas.android.com/apk/res/android" 
android:src="@drawable/imagename" 
android:tileMode="repeat" /> 

En su Disposición relativa añadir el XML anterior como fondo

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="@drawable/background" /> 
+6

Configuración del android: scaleType = "fitXY" es necesario si lo pones en un ImageView. –

3

Sí, es posible. Defina su imagen repetitiva como Drawable (bitmap) con android:tileMode="repeat" en XML y úselo como fondo de su RelativeLayout.

10

Sí, por supuesto, puede usarlo con diseño relativo. Úselo como fondo de su RelativeLayout. También lo usé en mi proyecto.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:background="@drawable/top_header_bg_repeat" 
     android:gravity="center"> 

top_header_bg_repeat.xml (in drawable folder) 
---------------------------------------------- 

<bitmap 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:src="@drawable/top_header" 
    android:tileMode="repeat" 
    android:dither="true"/> 

Set Bitmap in ImageView 
---------------------- 

<ImageView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:src="@drawable/top_header_bg_repeat" 
     android:scaleType="fitXY"/> 

<ImageView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:background="@drawable/top_header_bg_repeat"/> 
+0

quiero repetir la imagen usando imageView colocado en el diseño relativo hice esto pero no funcionó –

+0

¿Quiere decir que quiere ese mapa de bits en Imageview? –

+0

sí quiero el mapa de bits como fuente de la vista de imagen –

2

En todas las solicitudes existe un pequeño problema si la imagen será grande y más pequeño que el tamaño de su diseño, la imagen no cambiará de tamaño, solo se repetirá por X. Para repetir en Y, puede hacerlo solo programmly.

que resolver mi problema como este (conjunto de llenado por gravedad)

bg estirable para una imagen

<?xml version="1.0" encoding="utf-8"?> 
<bitmap xmlns:android="http://schemas.android.com/apk/res/android" 
     android:src="@drawable/table_cells_bg_img" 
     android:tileMode="repeat" android:gravity="fill" /> 

y el diseño

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="@dimen/table_cell_height"> 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="fill_parent" 
     android:layout_height="@dimen/table_cell_height" 
     android:scaleType="fitXY" 
     android:src="@drawable/table_cells_bg"/> 
<TextView 
     android:id="@+id/txtActivityTime" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_toRightOf="@+id/avatarImage" 
     android:text="TextView" 
     android:textColor="@color/white" 
     android:textSize="@dimen/font_size_middle" /> 
</RelativeLayout> 

Y table_cells_bg_img su imagen con un ancho = 1 píxel y la altura = 1px

y etc. del diseño, por lo que ahora su imagen es como backg redondo y se redimensionará para cualquier tamaño de diseño principal

Prueba, tal vez ayuda. Para borrar en mi caso, necesito una imagen de fondo embaldosada a tamaño completo de la tabla repetida por coordenadas X (como puedo hacerlo en iOS). Entonces lo resuelvo como lo describo.

Cuestiones relacionadas