Kotlin - не удалось определить тип для findViewById - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь получить доступ к методу setOnClickListener кнопки очистки, полученному из API автозаполнения Google Place R.id.place_autocomplete_clear_button.

я нашел ответ здесь : но я получаю ошибку, указанную в названии

placeAutocompleteFragment?.view?.findViewById(R.id.place_autocomplete_clear_button)


Я знаю, что вы в Котлинеможно применить:

apply plugin: 'kotlin-android-extensions'

и затем импортировать его в рабочий класс:

import kotlinx.android.synthetic.main.fragment_add_location.*

Я пробовал R.id.place_autocomplete_clear_button.setOnClickListener(View.OnClickListener{...

но не удача, неразрешенная ссылка: setOnClickListener


РЕДАКТИРОВАТЬ

Я сделал следующее, но получил NPE:

kotlin.KotlinNullPointerException at com.example.khoi.parkingapp.fragments.AddLocationFragment.clearButton (AddLocationFragment.kt: 129)

со следующим кодом:

private fun clearButton() {
    placeAutocompleteFragment!!.view!!.findViewById<View>(R.id.place_autocomplete_clear_button)!!
        .setOnClickListener {
            object : View.OnClickListener {
                override fun onClick(v: View?) {
                    println("cleared")
                }
            }
        }
}
...