安卓:背景遮盖了我的文字

4

I have a widget layout as follow :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/widget_bg">
<TextView android:layout_height="fill_parent"
 android:layout_width="fill_parent"
 android:id="@+id/widgetText"
 android:text="@string/sWaitingForLocation"
 android:layout_marginLeft="4dip"
 android:layout_marginRight="4dip"
 android:layout_marginTop="4dip"
 android:layout_marginBottom="4dip"
 android:textStyle="bold"
 android:gravity="center">
</TextView>
</LinearLayout>

但是文字似乎没有显示出来,就像被背景隐藏了一样。

我的背景是一个9patch png图片。 如果我使用android:background="android:color/black",它确实可以工作…… 难道是我的png图片有问题吗?(使用android工具draw9patch创建)

3个回答

3

2
我猜他在转换为9-patch时没有设置内容区域。 - Octavian Helm
我遇到了同样的问题,并通过设置内容区域来解决。感谢@OctavianDamiean。 - Kinka

0

可能会想到的解决方案:

  • 文本颜色是否与可绘制对象不同?
  • 是否有要显示的文本?

快速回答:不和是的 :)默认文本颜色为灰白色,字符串存在。 如果我删除“android:background = @ drawable / widget_bg”,那么文本就会显示出来,这让我认为文本在背景后面。 - Choumarin
@Choumarin: 尝试使用默认的9-patch,例如android:drawable/menuitem_background_pressed - JRL

0
我找到问题了:我的九宫格png图片出了问题。

它是怎么搞砸的?我也遇到同样的问题。 - Kat
不要只是接受答案而不解释它为什么出错,或者至少将其删除。 - Dale

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接