我有一个像下面的xml文件,我将用它来设置Textview
的背景:
<?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的背景,如下所示:
<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内容设置为背景?
任何人都可以帮我解决这个问题吗?
在此先感谢,
答案 0 :(得分:7)
我认为您正在寻找的方法是setBackgroundDrawable(Drawable d)
。
这将使用给定的Drawable设置背景。所以它看起来像这样:
TextView t1 = (TextView) findViewById(R.id.rowtext3);
t1.setBackgroundDrawable(row);
答案 1 :(得分:0)
如果我理解正确,那么您正在寻找来自Activity类的findViewById(int id)
。检索到视图后,可以使用setBackgroundResource(int id)
设置背景。参数 id 可以在生成的R文件中找到,例如: findViewById(R.drawable.row)
。