用Kotlin写Android 02 如何实现recycleview
来源:互联网 发布:查看mysql启动状态 编辑:程序博客网 时间:2024/05/29 16:59
为了实现recycleview 我们需要实现一个adapter
RecyclerView中所使用到的布局现在只需要一个TextView,我会手动去创建这个简单的文本列表。增加一个名为ForecastListAdapter.kt的Kotlin文件,包括如下代码:
class ForecastListAdapter(val items: List<String>):RecyclerView.Adapter<ForecastListAdapter.ViewHolder>(){ override fun getItemCount(): Int =items.size override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { return ViewHolder(TextView(parent.context)) } override fun onBindViewHolder(holder: ViewHolder, position: Int) { holder.textView.text = items.get(position) } class ViewHolder(val textView: TextView) : RecyclerView.ViewHolder(textView)}
优点:又是如此,我们可以像访问属性一样访问context和text。你可以保持以往那样操作(使用getters和setters),但是你会得到一个编译器的警告。如果你还是倾向于Java中的使用方式,这个检查可以被关闭。但是一旦你使用上了这种属性调用的方式你就会爱上它,而且它也节省了额外的字符总量。
回到MainActivity,现在简单地创建一系列的String放入List中,然后使用创建分配Adapter实例。
private val items = listOf( "Mon 6/23 - Sunny - 31/17", "Tue 6/24 - Foggy - 21/8", "Wed 6/25 - Cloudy - 22/17", "Thurs 6/26 - Rainy - 18/11", "Fri 6/27 - Foggy - 21/10", "Sat 6/28 - TRAPPED IN WEATHERSTATION - 23/18", "Sun 6/29 - Sunny - 20/7" ) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val forecastList = findViewById(R.id.rv_context) as RecyclerView forecastList.layoutManager = LinearLayoutManager(this) forecastList.adapter = ForecastListAdapter(items) }
作品:
阅读全文
1 0
- 用Kotlin写Android 02 如何实现recycleview
- 用Kotlin写Android 01 如何入手
- 用Kotlin写android点击事件
- 用Kotlin写android点击事件
- 用Kotlin写第一个Android程序
- Kotlin初探:用Kotlin实现Android的ListView列表
- 用Kotlin实现Android点击事件
- 【Android】用RecycleView实现可以横向滚动的ListView效果
- 用kotlin写的android Log的几乎完美封装
- RecycleView如何实现item的点击事件
- [Kotlin&Anko开发Android入门学习笔记]-02Kotlin如何使用Android第三方库
- Android RecycleView 实现滑动删除按钮
- android recycleview实现checked单选
- android recycleView
- Android RecycleView
- Android-RecycleView
- 用Kotlin开发Android
- Android Kotlin 用 DownloadManager 同步Json文件的实现
- ecnuoj#3039 按整数最高位的值排序
- python IDE之 PyCharm
- 登录与JDBC
- Android线程管理(三)
- 简单drools规则java代码自动生成
- 用Kotlin写Android 02 如何实现recycleview
- Java集合——HashMap多线程死循环问题
- Android线程管理(二)
- instanceof关键字
- 主题模型-LDA浅析
- vs20XX版本 当没有mvc的时候怎么办
- OpenGL ES学习笔记(二)
- WKWebView和UIWebView加载本地html和JS交互各种坑解决办法
- java基础问题