欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Kotlin编写Android适配器Adapter

程序员文章站 2023-11-28 22:44:52
说好今天要写一个使用kotlin写adapter的列子,我想了半天也没有组织好语言,直接上代码吧,有一定android基础的小伙伴肯定是能看的懂的 package...

说好今天要写一个使用kotlin写adapter的列子,我想了半天也没有组织好语言,直接上代码吧,有一定android基础的小伙伴肯定是能看的懂的

package com.example.administrator.kotlintest

import android.content.context
import android.view.layoutinflater
import android.view.view
import android.view.viewgroup
import android.widget.baseadapter
import android.widget.textview

/**
 * created by zhanglei on 2017/5/31.
 * listview的适配器
 */
class myadapter(var mlist: list<string>, var context: context) : baseadapter() {

  override fun getview(position: int, convertview: view?, parent: viewgroup?): view {
    var holder: myviewholder
    //重用view
    var v: view
    if (convertview == null) {
      holder = myviewholder()
      v = layoutinflater.from(context).inflate(r.layout.list_item_layout, parent, false)
      holder.textview = v.findviewbyid(r.id.list_text_item) as textview
      //设置tag
      v.tag = holder
    } else {
      v = convertview
      //获取tag并强转
      holder = v.tag as myviewholder
    }

    //为textview设置内容
    holder.textview.text = mlist[position]
    return v
  }

  override fun getitem(position: int): any {
    return mlist[position]
  }

  override fun getitemid(position: int): long {
    return position.tolong()
  }

  override fun getcount(): int {
    return mlist.size
  }

  class myviewholder {

    lateinit var textview: textview

  }
}

先写成这样吧,有什么不懂的请在评论区留言,我能帮你解决的我会尽力的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。