如何动态创建具有指定属性的TextView?

时间:2012-04-23 12:13:24

标签: java android

<TextView
    android:id="@+id/online_message"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Onliners:"
    />

我想通过以下方式创建TextView与上面相同的内容:

android.widget.TextView.TextView(Context context, AttributeSet attrs) 

但是如何指定attrs以便它代表与上面相同的属性?

This answer已关闭,但有没有办法只读取属性(xml中没有TextView标记)并解析为AttributeSet

更新

我正在寻找一种以编程方式构建AttributeSet的方法。

1 个答案:

答案 0 :(得分:0)

我认为与使用xml布局一起使用时,最好使用 AttributeSet 。否则,您可以创建以上所需的TextView,如下所示:

TextView t = new TextView(context);
t.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
t.setTextAppearance(context, android.R.attr.textAppearanceLarge);
t.setText("Onliners:");

关于Id,您实际上不需要在代码中设置它,因为您引用了整个对象。