Wie man Kotlin Android Extensions mit Fragment
s verwenden? Wenn ich sie innerhalb onCreateView()
verwenden, erhalte ich diese NullPointerException
Ausnahme:Kotlin Android Erweiterungen und Fragmente
Verursacht durch: java.lang.NullPointerException: Versuch virtuellen Methode ‚android.view.View android.view.View.findViewById (int aufrufen)‘auf einer null Objektreferenz
ist der Fragment-Code:
package com.obaied.testrun.Fragment
import android.os.Bundle
import android.support.v4.app.Fragment
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.obaied.acaan.R
import kotlinx.android.synthetic.main.fragment_card_selector.*
public class CardSelectorFragment : Fragment() {
val TAG = javaClass.canonicalName
companion object {
fun newInstance(): CardSelectorFragment {
return CardSelectorFragment()
}
}
override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? {
var rootView = inflater?.inflate(R.layout.fragment_card_selector, container, false)
btn_K.setOnClickListener { Log.d(TAG, "onViewCreated(): hello world"); }
return rootView
}
}
`
Wenn Sie es in onCreateView tun möchten, wird btn_K auch eine Eigenschaft auf rootView sein. Sie könnten tun "rootView.btn_K.setOnClickListener" – Makotosan