#一些以前没有接触过的内容#
一、安卓ViewBinding直接绑定布局
1.启用视图绑定
android {
viewBinding {
enabled = true
}
}
2.在 Activity 中使用视图绑定
调用生成的绑定类中包含的静态
inflate()
方法。此操作会创建该绑定类的实例以供 Activity使用。通过调用 getRoot()方法获取对根视图的引用。
将根视图传递到setConentView,使其成为屏幕上的活动视图。
3.各类方法中的视图绑定
https://blog.csdn.net/zhijiandedaima/article/details/131092500
二、雷电模拟器直接连接安卓studio
三、BaseQuickAdapter使用
1.导入依赖 implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.4'
2.继承并重写方法
3.赋值并刷新
adapter.setNewInstance(data) //或者setNewData(),初始化数据
adapter.setList(data) //更新数据
4.holder常用方法
holder.getView(viewId) //获取控件
holder.setText(R.id.textView, str) //设置文本
holder.getView(viewId).setOnClickListener {} //指定控件的点击事件
holder.getLayoutPosition() //获取当前item的position
四、SeekBar(拖动条)
拖动条类似进度条,不同的是用户可以控制,比如,应用程序中用户可以对音效进行控制,这就可以使用拖动条来实现。由于拖动条可以被用户控制,所以需要对其进行事件监听,这就需要实现SeekBar.onSeekBarChangeListener接口。在SeekBar中共需要监听3个事件,分别是:数值的改变(onProgressChanged)、开始拖动(onStartTrackingTouch)、停止拖动(onStopTrackingTouch)。在onProgressChanged中我们可以得到当前数值的大小。
https://blog.csdn.net/yyxhzdm/article/details/129393660
五、SurfaceView
SurfaceView的内容是透明的,可以嵌入到view层次结构中,并且可以和其他view进行重叠或者裁剪。surfaceview适用于需要频繁刷新或处理逻辑复杂的绘图场景,如视频播放、游戏等。但是demo中对于其的处理被封装起来了。glsurfaceview是一种继承自surfaceview的组件,它在底层封装了egl上下文、线程间通信以及与activity生命周期交互等功能。使用glsurfaceview时,我们无需自己创建和管理子线程,只需实现glsurfaceview.renderer接口,并设置给glsurfaceview对象。
六、ActivityLifecycleCallbacks
Application 类提供了一个接口:Application.ActivityLifecycleCallbacks
需要新建一个类,继承接口 Application.ActivityLifecycleCallbacks。
https://blog.csdn.net/u012005313/article/details/75448611
七、调用权限和Activity创建模式
#一些问题#
一、Demo内容很多直接调用SDK操作,具体如何使用存疑
二、代码存在部分bug,实际运行效果,与描述有差异