Gur*_*Rao 6 android kotlin android-studio
所以,刚开始在Android Studio 3.0 Canary 7 中使用Kotlin,我正在执行一个简单的操作来检查字符串是否为空。
这是我的简单布局:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click me"
android:id="@+id/btnClick"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Write something to print"
android:id="@+id/edtTxt"/>
Run Code Online (Sandbox Code Playgroud)
和MainActivity.kt我下面的东西
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
btnClick.setOnClickListener {
val message=edtTxt.text
if (message == "")
longToast("Come on! Write something")
else
longToast("You've written $message")
}
}
}
Run Code Online (Sandbox Code Playgroud)
所以最初我在 clicklistener 中编写了代码
val message=edtTxt.text
if (message.equals("")) //this here
longToast("Come on! Write something")
else
longToast("You've written $message")
Run Code Online (Sandbox Code Playgroud)
后来IDE建议将其替换为
我尝试这样做,if (message=="")但开始显示运算符“==”不能应用于“可编辑!” 和 'String' 比较字符串错误时。这完全令人困惑。
我的疑惑在这里:
edtTxt.text只是 java 的替代品editTxt.getText()。所以基本上这必须String在使用==运算符之前转换为。
如果要从Editable对象使用toString()方法获取字符串。
val message=edtTxt.text.toString()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2555 次 |
| 最近记录: |