我正在尝试将TextView和ImageView结合起来,并希望将TextView放置在图像中两个圆圈的中心,但不知何故,我无法找到适用于不同类型设备的解决方案。 这是我正在尝试使用的图像:
这是我迄今为止所尝试过的。我将imageview和textview都放在了framelayout中,然后尝试使用linearlayouts和layout weight来调整textview。 `
<FrameLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="80">
<ImageView
android:id="@+id/home"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/circle_pic"
android:adjustViewBounds="true" />
<LinearLayout
android:id="@+id/home_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/ll1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="60"
android:gravity="center">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="85"
android:orientation="vertical"
android:gravity="center">
<TextView
android:id="@+id/tv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textColor="@color/white"
android:text="@string/text1"/>
<TextView
android:id="@+id/tv2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="50sp"
android:textColor="@color/white"
android:text="@string/text2"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="15">
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/ll3"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_below="@id/text3"
android:orientation="horizontal"
android:layout_weight="40"
android:gravity="center_horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="40">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="60"
android:orientation="vertical"
android:gravity="center">
<TextView
android:id="@+id/tv3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:text="@string/tv3"
android:textColor="@color/white"/>
<TextView
android:id="@+id/tv4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="50sp"
android:text="000"
android:textColor="@color/white"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</FrameLayout>`
答案 0 :(得分:0)
您可以使用RelativeLayout来实现此目的
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="<your_drawable>"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/imageView"
android:layout_alignRight="@id/imageView"
android:layout_alignTop="@id/imageView"
android:layout_alignBottom="@id/imageView"
android:gravity="center"/>
</RelativeLayout>