安卓开发:如何静态和动态设置textView的文本和背景色彩,如何填?初学不知填什么.要详细
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓开发:如何静态和动态设置textView的文本和背景色彩,如何填?初学不知填什么.要详细相关的知识,希望对你有一定的参考价值。
静态就是在可视化的Graphical Layout内的属性内填textView1.TextColor(文本色)
textView1.Background(背景色)
中填 @android就会自动弹出所有定义的色彩值
如 @android:color/holo_blue_bright
动态就是程序中设定色彩
import android.graphics.Color;
textView1.setTextColor(Color.RED);
textView1.setBackgroundColor(Color.RED); 参考技术A android:textColor设置文本颜色
android:textColorHighlight被选中文字的底色,默认为蓝色
android:textColorHint设置提示信息文字的颜色,默认为灰色。与hint一起使用。
android:textColorLink文字链接的颜色.
android:textScaleX设置文字之间间隔,默认为1.0f。
android:textSize设置文字大小,推荐度量单位”sp”,如”15sp”
android:textStyle设置字形[bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“|”隔开
android:typeface设置文本字体,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3]
android:height设置文本区域的高度,支持度量单位:px(像素)/dp/sp/in/mm(毫米)
android:maxHeight设置文本区域的最大高度
android:minHeight设置文本区域的最小高度
android:width设置文本区域的宽度,支持度量单位:px(像素)/dp/sp/in/mm(毫米),与layout_width的区别看这里。
android:maxWidth设置文本区域的最大宽度
android:minWidth设置文本区域的最小宽度
如何动态更改多个TextView中的文本? [重复]
这个问题在这里已有答案:
我需要使用for循环设置布局中已存在的一些textView的文本。例如。 TextView_01,TextView_02等。有没有办法做类似下面的推测代码:
for(1 in 0..6){
TextView_0(change value with i).text = something
}
答案
这不是最好的做事方式,但它可能是最普遍的,同时避免创建预定义的TextView数组:
val base = "TextView_0"
for (i in 1 until 6) {
val textView = findViewById(resources.getIdentifier("${base}i", "id", packageName)
textView.text = something
}
我改变了你的for循环,因为你的语法错误了。我也用..
取代了until
,因为..
意味着通过右边界,这可能不是你想要的。如果你确实需要6
作为i
的值,那么将它改回..
。
如果所有TextView都在XML中的单个父项下,请为该父项提供ID,然后遍历其子项:
val parent = findViewById(R.id.tvParent)
for (i in 0 until parent.getChildCount()) {
(container.getChildAt(i) as TextView).text = something
}
另一答案
您可以使用父容器
for (i in 0 until container.childCount) {
(container.getChildAt(i) as TextView).text = something
}
另一答案
更好的方法是使用DataBinding和LiveData API,您可以为TextViews的文本属性分配不同的变量或相同的变量。
以上是关于安卓开发:如何静态和动态设置textView的文本和背景色彩,如何填?初学不知填什么.要详细的主要内容,如果未能解决你的问题,请参考以下文章