腾讯客户端一面
记录一下不会的内容
1、java的设计原则
2、LinearLayout和FrameLayout的绘制流程有什么区别
文心一言答案:FrameLayout是从上到下的一个堆叠的方式进行绘制的
LinearLayout在两个方向上绘制的布局,绘制的时候按照指定的方向绘制,比FrameLayout要慢
3、如果发现Recyclerview的一些性能问题,应该如何优化?
1、bindViewHolder方法是在UI线程进行的,如果在该方法进行耗时操作,将会影响滑动的流畅性
2、减少布局层级,可以考虑使用自定义View来减少层级
3、RecyclerView数据预处理
4、加大RecyclerView的缓存
3、相机的旋转是怎么做适配的
相机旋转后通过CameraCaptureSession.OnConfiguredListener回调函数通知的
https://blog.csdn.net/wangyantaozzu/article/details/103768142
4、相机预览的适配
1、根据预览的尺寸,将屏幕的大小根据预览比例调整界面的布局,截取屏幕的部分出来与预览一致
2、根据预览的尺寸,将TextureView显示时的画布按屏幕进行比例缩放,偏移再展示到TextureView中
建议第二种
5、camera2与camera1的区别
1、Camera1只能一次拍摄一张图片,而Camera2支持一次拍摄多张图片
2、Camera2有CameraCharacteristics实例专门提供相机信息,可以在不开启相机的前提下检查所有相机信息
3、camera2改进了新硬件的性能,使用更先进的API架构;
4、可以获取更多的帧(预览/拍照)信息以及手动控制每一帧的参数;
5、支持调整focus distance, 剪裁预览/拍照图片
6、支持更多图片格式(yuv/raw);
1、java的设计原则
2、LinearLayout和FrameLayout的绘制流程有什么区别
文心一言答案:FrameLayout是从上到下的一个堆叠的方式进行绘制的
LinearLayout在两个方向上绘制的布局,绘制的时候按照指定的方向绘制,比FrameLayout要慢
3、如果发现Recyclerview的一些性能问题,应该如何优化?
1、bindViewHolder方法是在UI线程进行的,如果在该方法进行耗时操作,将会影响滑动的流畅性
2、减少布局层级,可以考虑使用自定义View来减少层级
3、RecyclerView数据预处理
4、加大RecyclerView的缓存
3、相机的旋转是怎么做适配的
相机旋转后通过CameraCaptureSession.OnConfiguredListener回调函数通知的
https://blog.csdn.net/wangyantaozzu/article/details/103768142
4、相机预览的适配
1、根据预览的尺寸,将屏幕的大小根据预览比例调整界面的布局,截取屏幕的部分出来与预览一致
2、根据预览的尺寸,将TextureView显示时的画布按屏幕进行比例缩放,偏移再展示到TextureView中
建议第二种
5、camera2与camera1的区别
1、Camera1只能一次拍摄一张图片,而Camera2支持一次拍摄多张图片
2、Camera2有CameraCharacteristics实例专门提供相机信息,可以在不开启相机的前提下检查所有相机信息
3、camera2改进了新硬件的性能,使用更先进的API架构;
4、可以获取更多的帧(预览/拍照)信息以及手动控制每一帧的参数;
5、支持调整focus distance, 剪裁预览/拍照图片
6、支持更多图片格式(yuv/raw);
全部评论
可以通过调用SurfaceView.getLayoutParams().width和SurfaceView.getLayoutParams().height来获取新的预览尺寸,并根据新的尺寸来调整预览界面的显示方向。
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享