Hola, estoy usando dos vistas de texto una tras otra en el lado izquierdo y en el lado derecho está el texto de la barra de calificación y la barra de calificación. Necesito colocar una vista de imagen entre dos de ellos. ¿Cómo lograrlo?

Aquí está el código que probé.

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:background="#00A8E1"
    android:padding="10dp" >

    <TextView
        android:id="@+id/total_expreince"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:text="Total Experience"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/total_expreince_years"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/total_expreince"
        android:paddingLeft="5dp"
        android:text="7 Years"
        android:textColor="#E1D246" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:src="@drawable/ic_launchers" />

    <TextView
        android:id="@+id/Ratingbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/imageView1"
        android:layout_marginLeft="25dp"
        android:layout_toRightOf="@+id/imageView1"
        android:text="Rating "
        android:textColor="#FFFFFF" />

    <RatingBar
        android:id="@+id/rating_bar"
        style="@style/customRatingBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/Ratingbar"
        android:layout_below="@+id/Ratingbar"
        android:isIndicator="true" />
</RelativeLayout>
  my output is as follow

ingrese la descripción de la imagen aquí La salida esperada es: ingrese la descripción de la imagen aquí

2
Shadow 24 ene. 2015 a las 14:25

3 respuestas

La mejor respuesta

Activity_main.xml

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="20dp">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="#80000000"
            android:baselineAligned="false"
            android:orientation="horizontal" >

            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_marginTop="10dp"
                android:layout_weight="1"
                android:background="#00a8e1"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/total_expreince"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Experience"
                    android:textColor="#FFFFFF" />

                <TextView
                    android:id="@+id/total_expreince_years"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="7 Years"
                    android:textColor="#E1D246" />
            </LinearLayout>

            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_marginTop="10dp"
                android:layout_weight="1"
                android:background="#00a8e1"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/Ratingbar"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Rating "
                    android:textColor="#FFFFFF" />

                <RatingBar
                    android:id="@+id/rating_bar"
                     style="@style/Yourratingbarstyle "
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:isIndicator="true" />
            </LinearLayout>
        </LinearLayout>

    <ImageView
        android:layout_width="80dp"
        android:layout_height="80dp"
        android:layout_gravity="center"
        android:background="@drawable/shape"  --> shape xml in drawable
        android:src="@drawable/ic_launcher" />
</FrameLayout>

Forma de vista de imagen: shape.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>
        <shape android:shape="oval" >
            <padding
                android:bottom="2dp"
                android:left="2dip"
                android:right="2dp"
                android:top="2dp" />

            <solid android:color="#00a8e1" />
        </shape>
    </item>
    <item>
        <shape android:shape="oval" >
            <padding
                android:bottom="1dp"
                android:left="1dip"
                android:right="1dp"
                android:top="1dp" />

            <solid android:color="#EEE" />
        </shape>
    </item>

</layer-list>

Y su salida deseada:

And your desired output

1
Dhinakaran Thennarasu 27 ene. 2015 a las 03:28

Intente usar el diseño de tabla dentro del diseño relativo o lineal

<LinearLayout>
<TableLayout>
 <TableRow>
       <TextView> </TextView>
       <ImageView> </ImageView>
       <TextView> </TextView>
 </TableRow>
</TableLayout>
</LinearLayout>
0
Pravinraj Venkatachalam 24 ene. 2015 a las 12:06

Puede ser algo como el siguiente código:

<LinearLayout 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"
    android:orientation="vertical" >

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:background="#80000000"
            android:orientation="horizontal" >

            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/total_expreince"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:text="Total Experience"
                    android:textColor="#FFFFFF" />

                <TextView
                    android:id="@+id/total_expreince_years"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_below="@+id/total_expreince"
                    android:paddingLeft="5dp"
                    android:text="7 Years"
                    android:textColor="#E1D246" />
            </LinearLayout>

            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/Ratingbar"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignTop="@+id/imageView1"
                    android:layout_marginLeft="25dp"
                    android:layout_toRightOf="@+id/imageView1"
                    android:text="Rating "
                    android:textColor="#FFFFFF" />

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignTop="@+id/imageView1"
                    android:layout_marginLeft="25dp"
                    android:layout_toRightOf="@+id/imageView1"
                    android:text="******** "
                    android:textColor="#FFFFFF" />
            </LinearLayout>
        </LinearLayout>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="100dp"
            android:layout_gravity="center"
            android:src="@drawable/ic_launcher" />
    </FrameLayout>

</LinearLayout>

NOTA: cambie la vista de la imagen según sus necesidades.

0
Sagar Maiyad 24 ene. 2015 a las 11:40