Divya
Divya

Reputation: 543

Unresolved reference WearableRecyclerView.Adapter error in Kotlin

I'm trying to create an android wear app with a list of items. To enable circular scrolling, I'm using WearableRecyclerView by coding in kotlin. But facing this error Unresolved reference: Adapter The same code in java doesn't throw this error! I've also referred the inner and outer classes concepts in kotlin. Adapter class is an abstract class of RecyclerView which in turn is extended by WearableRecyclerView. Any guidance will be of much use, Thankyou!!

Here is my code

class CustomRecyclerAdapter(context: Context,dataSet: Array<String>): WearableRecyclerView.Adapter<CustomRecyclerAdapter.viewHolder>() {



var mDataSet: Array<String>
var mcontext: Context


init {
    mDataSet = dataSet
    mcontext=context
}

   inner class viewHolder(view: View) : WearableRecyclerView(mcontext) {

    val mTextView: TextView

    init {
        mTextView = view.findViewById(R.id.textView)
    }

    override fun toString(): String {
        return mTextView.text as String
    }
}

fun onCreateViewHolder(viewGroup: ViewGroup, viewType: Int): viewHolder {
    val view = LayoutInflater.from(viewGroup.context)
            .inflate(R.layout.recycler_row_item, viewGroup, false)

    return viewHolder(view)
}

fun onBindViewHolder(viewHolder: viewHolder, position: Int) {
    // Replaces content of view with correct element from data set
    viewHolder.mTextView.text = mDataSet[position]
}

// Return the size of your dataset (invoked by the layout manager)
fun getItemCount(): Int {
    return mDataSet.size
}

}

Upvotes: 4

Views: 2902

Answers (2)

Brendan
Brendan

Reputation: 743

Rather than using a (apparently non existent) WearableRecyclerView.Adapter consider using the non-wearable adapter: RecyclerView.Adapter

Upvotes: 1

Bubu
Bubu

Reputation: 1543

Your class inner class viewHolder(view: View) : WearableRecyclerView(mcontext) must extends WearableRecyclerView.ViewHolder instead of WearableRecyclerView like :

inner class viewHolder(view: View) : WearableRecyclerView.ViewHolder(view)

Upvotes: 0

Related Questions