- 博客(5)
- 收藏
- 关注
原创 【Android面试专题之】-- View嵌套滑动冲突解决方案
处理滑动冲突的核心在于合理分发和拦截触摸事件。根据具体场景选择合适的方法,通常可以通过外部拦截法、内部拦截法或机制来解决。对于复杂的嵌套滑动场景,可能需要结合多种方法来实现最佳效果。
2025-03-11 16:01:20
139
原创 Java中怎样安全停止一个线程
3. 使用 ExecutorService 的 shutdown() 或 shutdownNow():通过线程池管理线程的生命周期,平滑停止线程。2. 使用 Thread.interrupt():通过中断线程,要求线程在合适的地方响应中断并退出。4. 使用 Future.cancel():通过 Future 对象尝试取消任务并中断线程。1. 使用 volatile 标志位:适合任务具有周期性检查条件的场景。
2025-03-10 15:31:49
79
原创 kotlin内联函数原理
Kotlin 的内联函数通过将函数体直接插入到调用处,减少了函数调用的开销,特别是在使用高阶函数时。虽然内联函数可以提高性能,但也可能导致代码膨胀,因此在使用时需要权衡利弊。
2025-02-24 01:06:35
305
原创 Android 项目实战图片压缩效果分析
图片压缩使用了开源框架luban https://github.com/Curzibn/Luban。2、在体积更小的条件下,分辨率保持更高,更符合现在主流机型分辨率。是图片压缩工具,通过参考或者自创压缩规则推求极致的压缩效果。1080 × 5105 529kb 减少76.51%540 × 2553 769kb 减少65.85%1、从图片压缩后效果看,新压缩显示效果比之前更好。在聊天等场景中需要压缩图片。压缩效果主要参考微信。
2025-02-18 01:35:57
280
原创 Jetpack - LiveData 粘性事件
在LiveData中,粘性事件的具体表现是,如果一个Activity(FirstActivity)发送了数据,然后跳转到另一个Activity(SecondActivity),在SecondActivity中监听LiveData的变化,即使是在FirstActivity发送数据之后才注册监听LiveData的事件,也能收到之前的发送数据。这与常规的观察者模式有所不同,常规模式下,我们一般是先注册监听事件,然后才会有事件回调,并且注册事件是不考虑之前发生的逻辑的。
2024-09-03 22:37:53
259
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人