将 textView 与 Kotlin 中的字符串进行比较
Compare a textView with a String in Kotlin
我试图在每次按下按钮时更改 android 应用程序的文本视图
问题是未应用 'if' 操作,就好像它总是返回 false
这是为什么?
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val lol: String = "Hello World!"
button.setOnClickListener{
if ( textview.equals(lol)){
textview.setText("yeah")}
else
textview.setText("Hello World!")
}}}
Kotlin 使用 ==
进行字符串比较
https://kotlinlang.org/docs/reference/equality.html
Structural equality is checked by the ==
operation (and its negated
counterpart !=
).
此外,您正在尝试比较 String
和 TextView
,它们是两种不同的类型,因此它们永远不会相同。尝试:
if( textview.text == lol) {...
最后,作为一个建议,不要在您打算调试的代码中使用像 lol
这样的变量名。使用一个小的变量名可能快速且容易,但如果它不是描述性的,你以后尝试调试它会很糟糕,这是我个人的经验;)
我试图在每次按下按钮时更改 android 应用程序的文本视图
问题是未应用 'if' 操作,就好像它总是返回 false
这是为什么?
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val lol: String = "Hello World!"
button.setOnClickListener{
if ( textview.equals(lol)){
textview.setText("yeah")}
else
textview.setText("Hello World!")
}}}
Kotlin 使用 ==
进行字符串比较
https://kotlinlang.org/docs/reference/equality.html
Structural equality is checked by the
==
operation (and its negated counterpart!=
).
此外,您正在尝试比较 String
和 TextView
,它们是两种不同的类型,因此它们永远不会相同。尝试:
if( textview.text == lol) {...
最后,作为一个建议,不要在您打算调试的代码中使用像 lol
这样的变量名。使用一个小的变量名可能快速且容易,但如果它不是描述性的,你以后尝试调试它会很糟糕,这是我个人的经验;)