2024年Android kotlin使用RecyclerView实例,2024年最新爆火的Android面试题

【附】相关架构及资料

源码、笔记、视频。高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter全方面的Android进阶实践技术,和技术大牛一起讨论交流解决问题。

image

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

var item_intnbname = itemView.findViewById(R.id.tab_tv) as TextView

}

// 删除 打勾 全选

fun cleckAll(is_checked: Int) { //全选 删除多少那里要删除全部

for (a in entityList.indices) {

if (is_checked == a) {

entityList.get(a).bname = “选中了”

} else {

}

}

notifyDataSetChanged()

}

interface OnItemClickListener {

fun onItemClick(view: View, position: Int)

}

fun setOnItemClickListener(onItemClickListener: OnItemClickListener) {

this.mOnItemClickListener = onItemClickListener

}

}

3、添加recyclerview依赖

compile(‘com.android.support:recyclerview-v7:25.1.1’) {

force = true

}

4、加载数据实现kotlin 代码


private val barEntityList = ArrayList()

private var barAdapter: InternetBarAdapter? = null

private var lastposion: Int = 0

private var pagenum = 1

private var pageContent:Int = 0

private var pageSize = 10

public fun initrecycleView(){

var internentBarEntity2:InternentBarEntity= InternentBarEntity()

internentBarEntity2.badddata = “地址122”

internentBarEntity2.bname=“名称111222”

barEntityList.add(internentBarEntity2)

for (a in 0…19) {

var internentBarEntity:InternentBarEntity=InternentBarEntity()

internentBarEntity.badddata = “地址1”

internentBarEntity.bname=“名称111==”+a

barEntityList.add(internentBarEntity)

// if (a==6){

// break

// }

}

barAdapter = InternetBarAdapter( barEntityList)

barAdapter!!.setOnItemClickListener(object : InternetBarAdapter.OnItemClickListener {

override fun onItemClick(view: View, position: Int) {

barAdapter!!.cleckAll(position)

LgqLogutil.e(“ITEM”+position)

}

})

mRecyclerView.layoutManager = LinearLayoutManager(context)

mRecyclerView.adapter = barAdapter

mRecyclerView.isNestedScrollingEnabled = false//禁止滑动

mRecyclerView.isFocusable = false//导航栏切换不再focuse

mRecyclerView.addOnScrollListener(object : RecyclerView.OnScrollListener() {

//用来标记是否正在向最后一个滑动,既是否向右滑动或向下滑动

internal var isSlidingToLast = false

override fun onScrollStateChanged(recyclerView: RecyclerView?, newState: Int) {

val manager = recyclerView!!.layoutManager as LinearLayoutManager

// 当不滚动时

if (newState == RecyclerView.SCROLL_STATE_IDLE) {

//获取最后一个完全显示的ItemPosition

lastposion = manager.findLastCompletelyVisibleItemPosition()

// Log.i(“lgq”,“…dddddd=====”+“…”+lastposion);

val totalItemCount = manager.itemCount

if (lastposion == totalItemCount - 1 && isSlidingToLast) {

pagenum++

if (pagenum > pageContent) {

Toast.makeText(activity,“yidaodi”,Toast.LENGTH_LONG).show()

return

}

}

}

}

最后看一下学习需要的所有知识点的思维导图。在刚刚那份学习笔记里包含了下面知识点所有内容!文章里已经展示了部分!如果你正愁这块不知道如何学习或者想提升学习这块知识的学习效率,那么这份学习笔记绝对是你的秘密武器!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值