如何使用XML更改Textview的背景

时间:2013-08-18 09:55:42

标签: android background textview

我有一个当前使用Toast_Frame的文本视图,但我想修改它并使用XML文件添加我自己的扭曲和颜色。我怎么能这样做?这是我目前的代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:id="@+id/message" 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:layout_centerInParent="true"
    android:background="@android:drawable/toast_frame"/>
</RelativeLayout>

正如你所看到的那样,我正在做一个Toast_frame,我想改变它。任何帮助表示赞赏

3 个答案:

答案 0 :(得分:0)

您可以尝试使用自定义XML。阅读详细文档Drawable Resources。例如,您可以在XML中定义gradientstroke等,并使用此自定义drawable来设置背景。

<shape xmlns:android="http://schemas.android.com/apk/res/android"
      android:shape="rectangle">

      <gradient android:endColor="#CCCCCC" android:startColor="#CCCCCC"
      android:angle="270" />

      <stroke android:width="1dp" android:color="#999999" />

      <corners android:bottomRightRadius="0dp"
      android:bottomLeftRadius="0dp" android:topLeftRadius="0dp"
      android:topRightRadius="0dp" />

</shape>

另见How do I put a border around an Android textview?

答案 1 :(得分:0)

正如您在上面的评论中所说,您创建了一个新的可绘制XML,“name_something.xml”并将您的“toast_frame”更改为新文件。

在这个新文件中,你按照Shobhit Puri所说,取决于你想要的背景。

希望这有帮助。

答案 2 :(得分:0)

<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="opaque_red">#f00</color>
<color name="translucent_red">#80ff0000</color>
</resources>

Resources res = getResources();
int color = res.getColor(R.color.opaque_red);
textView.setBackgroundColor(color);