Неразрешенный символ toInt () в MainActivity Kotlin Android - PullRequest
0 голосов
/ 11 сентября 2018

это мой код для основной деятельности

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 (), утверждая, что это неразрешенный символ, любая помощь приветствуется

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

было 2 проблемы

первое существо -> (неразрешенный символ toInt ())

Я добавил их в файл сборки приложения, а затем очистил проект:

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()
0 голосов
/ 11 сентября 2018

Попробуйте это

input1.text.toString().toInt() + input2.text.toString().toInt()

вместо

input1.toString().toInt() + input2.toString().toInt()

EDIT

output.setText((input1.text.toString().toInt() + input2.text.toString().toInt()).toString()) 

Использование editText.setText()

Не используйте output.text, поскольку editText.text ожидает Editable, а не String.

...