我想在我的 android 应用中实现以下效果:

作为背景,我使用了 9-patch 的 png 图像。我只用一个文本 View 就这样尝试过

<ImageView
    android:id="@+id/myImageView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/rowimage" />

<TextView
    android:id="@+id/myImageViewText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/myImageView"
    android:layout_alignTop="@+id/myImageView"
    android:layout_alignRight="@+id/myImageView"
    android:layout_alignBottom="@+id/myImageView"
    android:layout_margin="1dp"
    android:gravity="center"
    android:text="Hello"
    android:textColor="#000000" />

但这就是我得到的结果

任何想法有什么问题?我怎样才能达到第一张图片的效果?

编辑:

我将我的 xml 更新为相对布局,现在我得到以下结果

为什么九块图不随文字缩放??

最佳答案

第一个解决方案尝试添加设置为 RelativeLayout 宽度的 fill_parent ,并将您的 NinePatch 图像设置为它的 background ,然后将您的 TextViews 添加到其中,如下所示:

<RelativeLayout
  android:id="@+id/layoutTextViews"
  android:layout_width="fill_parent"
  android:layout_height = "wrap_content"
  android:background="@drawable/rowimage"
>

<TextView
    android:id="@+id/txtView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_margin="1dp"
    android:gravity="center"
    android:text="Hello"
    android:textColor="#000000" />

<TextView
    android:id="@+id/txtView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_margin="1dp"
    android:gravity="center"
    android:text="Right"
    android:textColor="#000000" />

</RelativeLayout>

10-08 12:04