这是我主要活动的代码
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
fun onButton(view: View?){
if(view != null) {
if (input1.text != null && input2.text != null) {
output.text = (input1.toString().toInt() + input2.toString().toInt()).toString()
}
}
}
}
我在toInt()部分遇到错误,指出它是一个未解决的符号,感谢任何帮助
答案 0 :(得分:1)
尝试一下
input1.text.toString().toInt() + input2.text.toString().toInt()
代替
input1.toString().toInt() + input2.toString().toInt()
编辑
output.setText((input1.text.toString().toInt() + input2.text.toString().toInt()).toString())
使用 editText.setText()
请勿使用 output.text
,因为editText.text
需要Editable
,而不是String
。
答案 1 :(得分:0)
有2个问题
先被存在->(未解析的符号为int())
我将它们添加到应用程序构建gradle文件中,然后清理了项目:
apply plugin: 'kotlin-kapt'
android{
...
dataBinding {
enabled = true
}
}
dependencies{
....
kapt 'com.android.databinding:compiler:3.1.4'
}
第二次出现->(这导致应用程序崩溃)
input1.text.toString().toInt() + input2.text.toString().toInt()
代替
input1.toString().toInt() + input2.toString().toInt()