2011-01-31 42 views
9

我试图创建像基于textview的控制吐司,我发现非常奇怪的行为的情况下,当它有九个补丁drawable作为背景。填补与九个补丁背景的圆形textview没有视觉效果

这是XML定义:

<by.pplware.view.QuickInfo 
    android:id="@+id/quickinfo" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:padding="20px" 
    android:textSize="20px" 
    android:textStyle="bold" 
    android:typeface="serif" 
    android:background="#FFFF0000" 
/> 

这是TextView的彩色背景: enter image description here

这是TextView的与绘制背景: enter image description here

据我所知,在ninepatch的情况下背景android使填充透明并仅将drawable用作文本的背景。但我想填补填补九区背景覆盖区域。

是否有此问题的任何解决方案?

回答

26

尝试任何这些:

  1. 设置通过“机器人:背景”背景ninepatch XML属性,而不是编程;这与XML定义的填充进行合作。
  2. 如果您需要以编程方式设置背景,请尝试在设置背景后重新设置填充(如果您设置了填充,然后设置背景,我会假定在九个补丁中定义的填充将覆盖它)。
  3. 避免整个问题,只是设置你的ninepatch图像本身的填补区域(这是正确的和底部有黑条)。
+1

感谢评析 - 1和2真的有帮助。 – 2011-02-01 11:48:35