Kotlin
कोटलिन में RecyclerView
खोज…
परिचय
मैं सिर्फ कोटलिन का उपयोग करके अपने छोटे से ज्ञान और RecyclerView के कोड को साझा करना चाहता हूं।
मुख्य वर्ग और एडाप्टर
मैं, यह मानते हुए कि आप Kotlin के कुछ वाक्य रचना और कैसे उपयोग करने के लिए के बारे में जागरूक है सिर्फ activity_main.xml फ़ाइल और एडाप्टर वर्ग के साथ सेट में RecyclerView जोड़ें।
class MainActivity : AppCompatActivity(){
lateinit var mRecyclerView : RecyclerView
val mAdapter : RecyclerAdapter = RecyclerAdapter()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val toolbar = findViewById(R.id.toolbar) as Toolbar
setSupportActionBar(toolbar)
mRecyclerView = findViewById(R.id.recycler_view) as RecyclerView
mRecyclerView.setHasFixedSize(true)
mRecyclerView.layoutManager = LinearLayoutManager(this)
mAdapter.RecyclerAdapter(getList(), this)
mRecyclerView.adapter = mAdapter
}
private fun getList(): ArrayList<String> {
var list : ArrayList<String> = ArrayList()
for (i in 1..10) { // equivalent of 1 <= i && i <= 10
println(i)
list.add("$i")
}
return list
}
}
यह आपका पुनर्नवीनीकरण दृश्य अनुकूलक वर्ग है और आप जो चाहते हैं, वह main_item.xml फ़ाइल बनाएँ
class RecyclerAdapter : RecyclerView.Adapter<RecyclerAdapter.ViewHolder>() {
var mItems: ArrayList<String> = ArrayList()
lateinit var mClick : OnClick
fun RecyclerAdapter(item : ArrayList<String>, mClick : OnClick){
this.mItems = item
this.mClick = mClick;
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
val item = mItems[position]
holder.bind(item, mClick, position)
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val layoutInflater = LayoutInflater.from(parent.context)
return ViewHolder(layoutInflater.inflate(R.layout.main_item, parent, false))
}
override fun getItemCount(): Int {
return mItems.size
}
class ViewHolder(view: View) : RecyclerView.ViewHolder(view) {
val card = view.findViewById(R.id.card) as TextView
fun bind(str: String, mClick: OnClick, position: Int){
card.text = str
card.setOnClickListener { view ->
mClick.onClickListner(position)
}
}
}
}
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow