我想在带有9patch背景的相对布局上使用文本绘制ImageView。
<?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="fill_parent"
android:background="@drawable/splash_last" >
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:src="@drawable/appnameimg" >
</ImageView>
</RelativeLayout>
在编辑器中我有这个:
在电话上:
似乎我只有3个字符来自字符串。
我的错误在哪里?
UPD
有背景和文字图片。是不是因为“坏”9patch? link to images
答案 0 :(得分:1)
我能够重现这个问题。看起来你试图定义9补丁的方式就是问题。你想要一个角落是不可拉伸的,这是不可能的。根据{{3}} doc,要拉伸的区域是左和上一条像素黑线的交点。使用该定义,不可能将拐角定义为不可拉伸。如果我删除9补丁,两个图像看起来都很好。
答案 1 :(得分:0)
您需要定义图像在ImageView容器内的缩放方式。
在XML中设置android:scaleType =“fitCenter”,使图像在列表视图中居中,并将其放入容器内。
实施例
<ImageView
android:id="@+id/imageView2"
android:scaleType="fitCenter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:src="@drawable/appnameimg" >
</ImageView>
或者其他可能适合您的选项之一 ImageView.ScaleType