如何动态地将AttributeSet添加到TextView?

如何动态地将AttributeSet添加到TextView?,第1张

概述我想在单击按钮时将textView添加到表中.所以这就是我在OnClickListener中所做的事情:todoTable.addView(newTextView(this));我还想向这个动态创建的TextView添加属性,如文本内容或背景.那我该怎么办?AndroidStudio说有一个像这样的构造函数newTextView(Contextcontext,A

我想在单击按钮时将textVIEw添加到表中.所以这就是我在OnClickListener中所做的事情:

todotable.addVIEw(new TextVIEw(this));

我还想向这个动态创建的TextVIEw添加属性,如文本内容或背景.那我该怎么办? AndroID Studio说有一个像这样的构造函数

new TextVIEw(Context context, AttributeSet attrs)

我可以在AttributeSet参数中包含哪些内容来为TextVIEw提供值,例如“Hello World!”?

解决方法:

做这样的事情,创建一个返回TextVIEw的方法,你也可以设置你的文本.一种更简单的方法是仅创建文本视图布局,而只是重用它. AttributeSet主要用于创建自定义视图并需要添加更多属性时.

public TextVIEw createTextVIEw(String text) {    String attributes =            "<attribute xmlns:androID=\"http://schemas.androID.com/apk/res/androID\" " +            "androID:layout_wIDth=\"match_parent\" androID:layout_height=\"wrap_content\" androID:padding=\"10dp\" " +            "androID:background=\"@drawable/List_selector_background\" androID:clickable=\"true\" " +            "androID:textAppearance = \"@androID:style/TextAppearance.Medium\" androID:textcolor = \"@color/text_colors\" " +            "androID:text=\"" + text +  "\" androID:gravity = \"left\" " + "\"/>";    XmlPullParserFactory factory = null;    try {        factory = XmlPullParserFactory.newInstance();        factory.setnamespaceAware(true);        XmlPullParser parser = factory.newPullParser();        parser.setinput(new StringReader(attributes));        parser.next();        AttributeSet attrs = Xml.asAttributeSet(parser);        return new TextVIEw(this, attrs);    } catch (XmlPullParserException e) {        e.printstacktrace();    } catch (IOException e) {        e.printstacktrace();    }    return new TextVIEw(this);}
总结

以上是内存溢出为你收集整理的如何动态地将AttributeSet添加到TextView?全部内容,希望文章能够帮你解决如何动态地将AttributeSet添加到TextView?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1117205.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存