2012-02-02 182 views
4

我想将背景设置为TextView,我希望TextView的大小为背景和文本的大小。TextView背景拉伸

这里是我的代码:

<TextView 
     android:id="@+id/attackeNameTextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_marginTop="13dp" 
     android:paddingTop="8dp" 
     android:paddingLeft="35dp" 
     android:paddingRight="35dp" 
     android:singleLine="true" 
     android:ellipsize="end" 
     android:textSize="12sp" 
     android:text="thej hhekj hejk hjkesd ks dkl jsalkj dkl" 
     android:background="@drawable/attackee_name_background"/> 

的结果是,该文本的“填充盒子”就好内配合,但背景被拉伸。

我是否必须为TextView分配一个固定的layout_width

+0

只是分配给背景属性配合中心;) – JackTurky 2012-02-02 09:49:02

+2

您可以使用bacground图像为[9补丁(http://developer.android.com/guide/developing/tools/draw9patch.html) – 2012-02-02 09:49:45

+0

如何分配我财产的背景? – piojo 2012-02-02 09:50:05

回答

3

如果你想要的背景完全适合您的TextView大小,而不拉伸和文本适合里面,你有要使用9-patch图像,或者必须设置与图像尺寸相同的固定尺寸。没有其他解决方案。

也考虑到padding仅缩小文本框区域(背景不缩小),而margin s留下TextView框外的空间。

所以,如果背景图像是(image_width, image_height),你要离开TextView内部填充不streching的背景和不使用9-patch图像,你必须设定一个固定的大小TextView等于(image_width+paddingLeft+paddingRight, image_height+paddingTop+paddingBottom)

+0

+1如果提到边距将调整背景的大小,而填充不会。 – ArtOfWarfare 2012-11-13 22:47:16

+0

我在drawable文件夹中使用* .9.png图像。但不会摧毁9贴图的制作时间。请建议...如何在Android项目中使用9-patch imge? – 2016-04-21 10:48:45

3

编辑

这里是做你想要什么样的哈克的方式...

<FrameLayout 
     android:id="@+id/frameLayout1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 

     <ImageView 
      android:id="@+id/imageView1" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:scaleType="fitCenter" 
      android:src="@drawable/something" /> 
     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:text="TextView" /> 
    </FrameLayout> 
+0

'android:scaleType =“fitCenter”'不起作用。如果我制作9个补丁,是否需要为它设置一个内容区域,对不对? – piojo 2012-02-02 09:56:07

+0

雅所以填充是正确和底部,然后比例是顶部和左侧。 – Maurycy 2012-02-02 09:59:30

+0

我不希望它缩放,多数民众赞成我试图阻止。它根本不起作用 – piojo 2012-02-02 10:06:16