如何将带有图像的圆形textview放置在透明图像android附近?`

时间:2015-01-05 08:08:49

标签: android android-layout android-imageview android-relativelayout

如何将带有两个textview的圆形图像放在透明图像下面?我使用textview创建了透明图像,但我不知道如何使用两个textview(即日期和日期)放置圆形图像。 如何实现预期产出?

预期产量为:  enter image description here

这是我的代码。

 <?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#AAA" >

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="@dimen/overlay_margin"
        android:background="#FFF" >

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:src="@drawable/salogo" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:background="#7000"
            android:orientation="vertical"
            android:paddingBottom="15dp"
            android:paddingTop="15dp" >
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="Marathon for organ donation"
                android:textColor="#CCC"
                android:textSize="12sp"/>
            </LinearLayout>
    </RelativeLayout>
   </LinearLayout>
    </ScrollView>

但我的输出为:  enter image description here

2 个答案:

答案 0 :(得分:6)

可绘制文件夹中创建circular_bg.xml 并写.. ..

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval" >
<gradient
    android:endColor="#3399FF"
    android:startColor="#3399FF" />

<padding
    android:bottom="1.5dp"
    android:left="1.5dp"
    android:right="1.5dp"
    android:top="1.5dp" />

</shape>

现在在您的xml中

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:padding="2dp" >
        <TextView
            android:id="@+id/text"
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:text="31 sun"
            android:layout_centerInParent="true"
            android:background="@drawable/circular_bg"
            android:gravity="center"
            android:textColor="#ffffff"
            android:textStyle="bold" />

</RelativeLayout>

它将解决您的问题。

答案 1 :(得分:0)

你现在的布局也几乎可以达到这个目的......这是你的相对铺设的一个补充,一个带圆形的textView

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
android:layout_margin="@dimen/overlay_margin"
        android:background="#FFF" >

        <ImageView
            android:layout_width="300dp"
            android:layout_height="200dp"
            android:layout_centerInParent="true"
            android:src="@drawable/salogo" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:background="#7000"
            android:orientation="vertical"
            android:paddingBottom="15dp"
            android:paddingTop="15dp" >
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="Marathon for organ donation"
                android:textColor="#CCC"
                android:textSize="12sp"/>
            </LinearLayout>
            <TextView 
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_alignParentBottom="true"
                android:layout_marginLeft="20dp"
                android:background="@drawable/circle" />
    </RelativeLayout>

对于圆形形状,通过在名称为circle的drawable文件夹中创建xml文件来添加以下代码。

   <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
    <corners android:radius="10dp" />

    <!-- this is for the outline you can remove this stroke or change the color by replacing #FFFFFF with your color -->
    <stroke android:width="1dp"
        android:color="#FFFFFF" />

</shape>