Error „Keiner der folgenden Funktionen können mit den mitgelieferten Argumenten aufgerufen werden:“ mit Toast

stimmen
0

Ich möchte einen Code erstellen, die auf Elemente von RecyclerView zu klicken. Ich fand eine aus dem Internet, aber halten sie diesen Fehler:

Keiner der folgenden Funktionen können mit den mitgelieferten Argumenten aufgerufen werden:

Öffentlichkeit zugänglich Spaß Maketext (p0: Kontext !, p1: CharSequence !, p2: Int): Toast! definiert in android.widget.Toast

Öffentlichkeit zugänglich Spaß Maketext (p0: Kontext !, p1: Int, p2: Int): Toast! definiert in android.widget.Toast

Hier ist mein Code:

override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        recyclerView.layoutManager = LinearLayoutManager(this, RecyclerView.VERTICAL, false)
        val users = ArrayList<User>()

        val adapter = CustomAdapter(users)

        recyclerView.adapter = adapter

        recyclerView.addOnItemClickListener(object : OnItemClickListener {
            override fun onItemClicked(position: Int, view: View) {
                Toast.makeText(this, Clicked on   + users.get(position).name, Toast.LENGTH_LONG).show()
            }
        })


    }

    interface OnItemClickListener {
        fun onItemClicked(position: Int, view: View)
    }

    fun RecyclerView.addOnItemClickListener(onClickListener: OnItemClickListener) {
        this.addOnChildAttachStateChangeListener(object : RecyclerView.OnChildAttachStateChangeListener {
            override fun onChildViewDetachedFromWindow(view: View) {
                view.setOnClickListener(null)
            }

            override fun onChildViewAttachedToWindow(view: View) {
                view.setOnClickListener {
                    val holder = getChildViewHolder(view)
                    onClickListener.onItemClicked(holder.adapterPosition, view)
                }
            }
        })
    }

Wie kann ich das beheben, dass die Fehlermeldung?

Veröffentlicht am 09/10/2019 um 19:01
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
0
Toast.makeText(this@YOUR_ACTIVITY_NAME, "Clicked on  " + users.get(position).name, Toast.LENGTH_LONG).show()
Beantwortet am 09/10/2019 um 19:07
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more