Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.milesmarine.reeflightcontroller
- import android.view.LayoutInflater
- import android.view.View
- import android.view.ViewGroup
- import android.widget.TextView
- import androidx.recyclerview.widget.RecyclerView
- class DeviceAdapter(
- private val deviceList: List<OpenBekenDevice>,
- private val onDeviceClick: (OpenBekenDevice) -> Unit // Changed to accept OpenBekenDevice
- ) :
- RecyclerView.Adapter<DeviceAdapter.DeviceViewHolder>() {
- class DeviceViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
- val ipAddress: TextView = itemView.findViewById(R.id.tvDeviceIP)
- val macAddress: TextView = itemView.findViewById(R.id.tvDeviceMAC)
- }
- override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): DeviceViewHolder {
- val view = LayoutInflater.from(parent.context)
- .inflate(R.layout.item_device, parent, false)
- return DeviceViewHolder(view)
- }
- override fun onBindViewHolder(holder: DeviceViewHolder, position: Int) {
- val device = deviceList[position]
- holder.ipAddress.text = device.ip
- holder.macAddress.text = device.mac
- // Set up the click listener for each item
- holder.itemView.setOnClickListener {
- onDeviceClick(device) // Pass the selected device as OpenBekenDevice back to the activity
- }
- }
- override fun getItemCount(): Int {
- return deviceList.size
- }
- }
Add Comment
Please, Sign In to add comment