Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Kotlin是否有与'+=';文本视图上的操作员?_Android_Kotlin - Fatal编程技术网

Android Kotlin是否有与'+=';文本视图上的操作员?

Android Kotlin是否有与'+=';文本视图上的操作员?,android,kotlin,Android,Kotlin,我尝试了txtCalc.text=“文本”+“0”,但它不起作用如果您在文本视图中读取当前文本,您将得到一个字符序列,在将任何内容连接到它之前,必须将其转换为字符串: textView.text = textView.text.toString() + "0" 或者您可以使用TextView的方法: textView.append("0") inline operator fun TextView.plusAssign(text: CharSequence) = append(text)


我尝试了txtCalc.text=“文本”+“0”,但它不起作用

如果您在
文本视图中读取当前文本
,您将得到一个
字符序列
,在将任何内容连接到它之前,必须将其转换为字符串:

textView.text = textView.text.toString() + "0"
或者您可以使用
TextView
的方法:

textView.append("0")
inline operator fun TextView.plusAssign(text: CharSequence) = append(text)

textView += "0"

或者,如果您确实想使用
+=
,您可以在
文本视图上创建自己的扩展:

textView.append("0")
inline operator fun TextView.plusAssign(text: CharSequence) = append(text)

textView += "0"

字符序列,即
text
是,不定义
+
(加号运算符)

使用一个字符串模板,你可以写得更简洁

注意:
toString()
在文本(
CharSequence
)上被隐式调用,从而将其转换为
字符串

textView.text = "${textView.text}0"

如果您想实际使用可修改的视图字符串,您可能需要查看android数据绑定。由于我使用了textView.append(“0”),所以仍然无法正常工作。这很好,但是如果我想在旧文本之前添加0,比如textView.text=“0”+textView.text,您仍然可以使用我向您展示的第一个代码示例-或者是,或者使用@Willi Mentzel的另一个答案中所示的字符串模板