其他分享
首页 > 其他分享> > android – 如何从Xml文件动态设置TextView的背景

android – 如何从Xml文件动态设置TextView的背景

作者:互联网

我有一个像下面的xml文件,我将用它来设置Textview的背景:

row.xml

      <?xml version="1.0" encoding="utf-8"?>
      <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>

上面的Xml我将在main.xml中设置为TextView的背景,如下所示:

main.xml中

<TextView
android:id="@+id/rowtext3"
android:text="Availablity"
android:layout_height="25px"
android:layout_width="60px"
android:textSize="10px"
android:textStyle="bold"
android:textColor="@color/black"
android:gravity="center"
android:background="@drawable/row"
/>

但我希望这可以从代码而不是Xml.我已经完成了我在Xml中所做的一切,如字体,宽度,高度,字体动态通过代码,但不能设置我在Xml文件中提到的背景.我们如何将Xml文件的内容设置为textview的背景,类似于我们在main.xml中将背景设置为XML的方式.

在代码我这样做:

    t1=new TextView(this); <br>
    t1.setText(ed1.getText()); <br>
    t1.setHeight(25); <br>
    t1.setWidth(60); <br>
    t1.setTextSize(10); <br>

但我没有找到如何设置背景,即如何将XML内容设置为背景?
任何人都可以帮我解决这个问题吗?
提前致谢,

解决方法:

我认为您正在寻找的方法是setBackgroundDrawable(Drawable d).

这将使用给定的Drawable设置背景.所以它看起来像这样:

TextView t1 = (TextView) findViewById(R.id.rowtext3);
t1.setBackgroundDrawable(row);

标签:android,xml-drawable,textview
来源: https://codeday.me/bug/20190730/1581170.html