这是我的主要活动代码
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()部分收到一个错误,声明它是一个未解决的符号,任何帮助表示赞赏
试试这个
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
。
有2个问题
首先是 - >(未解析的符号toInt())
我将这些添加到app build 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()