簡體   English   中英

Kotlin 中接口聲明中的可見性修飾符沖突

[英]Visibility modifier conflict in interface declaration in Kotlin

我有一個簡單的回收器視圖,其中我在主體中有接口,並且我已經在構造函數參數中聲明了接口,因此我可以在回收器視圖的主體中訪問它。 但它顯示錯誤為

Conflicting declarations: public interface CardClickListener, private final val CardClickListener: MemoryBoardAdapter.CardClickListener

我試圖更改可見性修飾符,但錯誤仍然存在。 ** 我的代碼:**

帶界面的回收站視圖:

class MemoryBoardAdapter(   private val CardClickListener: CardClickListener ) :     RecyclerView.Adapter<MemoryBoardAdapter.ViewHolder>() { 

interface CardClickListener{     

    fun onCardClicked(position: Int) 

    } }

MainActivity object 調用recyclerView:

binding.rvBoard.adapter = MemoryBoardAdapter(object: MemoryBoardAdapter.CardClickListener{override fun onCardClicked(position: Int) {// TODO}

        })

我試圖從 private val 更改為 internal var 但錯誤仍然存在。 如果我刪除 class 構造函數中的可見性修飾符,錯誤就會消失,但我無法訪問 class 體內的界面。

object 中 CardClickListener 的大寫object: MemoryBoardAdapter.CardClickListener與您適配器中的接口名稱CardClickListener沖突。 更改參數的名稱或使用cardClickListener

class MemoryBoardAdapter(private val cardClickListener: CardClickListener ) 

代替

class MemoryBoardAdapter(private val CardClickListener: CardClickListener ) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM