Kotlin-findViewById

时间:2019-03-01 18:33:56

标签: android kotlin google-places-api type-inference kotlin-android-extensions

我正在尝试访问Google的Place Autocomplete API setOnClickListener中的清除按钮的R.id.place_autocomplete_clear_button方法。

我找到了答案here:但是我得到了标题中指出的错误

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


我知道在Kotlin中您可以应用:

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           在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")
                }
            }
        }
}

0 个答案:

没有答案