首页
学习
活动
专区
工具
TVP
发布

刘晓杰

专栏作者
281
文章
255903
阅读量
41
订阅数
RecyclerView的部分优化
1.在 onCreateViewHolder 里面写点击事件 这个很好理解,onBindViewHolder会多次调用
提莫队长
2021-12-16
7400
"Activity top position already set to onTop=false"解决方案[未验证]
isTopResumedActivity 是android10新增的代码。当最上层的resume的Activity获得或者失去焦点时会响应onTopResumedActivityChanged。这个方法的参数isTopResumedActivity就是指的是否有焦点,最终就会影响isTopResumedActivity 。 onTopResumedActivityChanged 这个方法是10以上新加的方法。当只有一个Activity的时候,onTopResumedActivityChanged 等同于我们熟悉的onResume。当处于分屏状态下,一个Activity的onTopResumedActivityChanged 返回false,必然有另一个Activity返回true。(onTopResumedActivityChanged 这个方法的注释里面有,有兴趣可以自己去看)(所以这个崩溃只可能在分屏状态下发生???) 观察log,初步确定问题出在 H.handleMessage 里面. H 就是内置的handler
提莫队长
2021-07-20
2.1K0
JetPack最新库的简单介绍
这个其实没啥可说的,其实就是简化了一部分用法,比如把构造器放到activity上去。参考链接 How AndroidX changes the way we work with Activities and Fragments A first look at AndroidX Activity Result APIs
提莫队长
2021-07-19
8140
android paging 库介绍
Paging 使您的应用程序配合RecyclerView更容易从数据源中高效优雅地加载所需的数据,不会因为数据库数据量大而造成查询时间过长。说白了就是分页加载的优化。
提莫队长
2021-06-29
1K0
深入了解ViewPager2
ViewPager2从名字就可以看出来它是ViewPager的升级版,既然是升级版那么它相比ViewPager有哪些新变化呢? 添加依赖,目前ViewPager2的最新稳定版本是1.0.0(20210525)。1.1.0-alpha01 不稳定
提莫队长
2021-06-29
1.4K0
JetPack Material Design 组件简单介绍
基于最新的 com.google.android.material:material:1.4.0-alpha01。因为没有release,所以只是介绍了解,以后release了可以直接使用
提莫队长
2021-04-01
1.8K0
Android异步框架的比较(CompletableFuture,Coroutine,RxJava)
CompletableFuture Future系列(FutureTask) Future系列(CompletableFuture的使用) Future系列(CompletableFuture与retrofit)使用和解析
提莫队长
2021-03-15
2K0
Future系列(CompletableFuture与retrofit)使用和解析
注意,retrofit 2.9.0 已经内置了 java8 的 adapter,所以不需要 adapter-java8 的依赖了 另外,别忘了网络权限
提莫队长
2021-03-11
1.1K0
Coroutine(协程)(四)和retrofit搭配使用
注意:Coroutine和retrofit的使用在retrofit2.6之前之后是有区别的
提莫队长
2021-03-09
2.3K0
Coroutine(协程)(三)
一个 Channel 是一个和 BlockingQueue 非常相似的概念。其中一个不同是它代替了阻塞的 put 操作并提供了挂起的 send,还替代了阻塞的 take 操作并提供了挂起的 receive。
提莫队长
2021-03-04
4870
Toast BadTokenException
从报错信息看应该是Toast的。而且都在7.1.2以下,也就是API25以下。查看Toast的handleShow方法(api27和api25),发现是因为 mWM.addView(mView, mParams); 这一段代码在 25 没有 try catch,而 27 是加了 try catch 的。 鉴于 handleShow 是 Toast 的内部类 TN 里面的方法。因此一共有两种思路
提莫队长
2021-02-22
9560
内存优化实战
最近,因为项目时间不紧的原因,就对项目的某些页面进行了内存观察,发现了两处优化点.特意记录下来
提莫队长
2020-09-10
6250
RecyclerView的缓存机制和内存优化
这里面主要介绍一下 mAttachedScrap 和 mChangedScrap.他们都是在同一个函数中 add 的
提莫队长
2020-07-22
1.7K0
Window, WindowManager和WindowManagerService
Window在Android开发中是一个窗口的概念,它是一个抽象类,具体的实现类是PhoneWindow,在PhoneWindow中有一个顶级View—DecorView,继承自FrameLayout,我们可以通过getDecorView()获得它,当我们调用Activity的setContentView时,其实最终会调用Window的setContentView,当我们调用Activity的findViewById时,其实最终调用的是Window的findViewById,这也间接的说明了Window是View的直接管理者。但是Window并不是真实存在的,它更多的表示一种抽象的功能集合,View才是Android中的视图呈现形式,绘制到屏幕上的是View不是Window,但是View不能单独存在,它必需依附在Window这个抽象的概念上面,Android中需要依赖Window提供视图的有Activity,Dialog,Toast,PopupWindow,StatusBarWindow(系统状态栏),输入法窗口等,因此Activity,Dialog等视图都对应着一个Window。
提莫队长
2020-06-03
7480
Jetpack:ViewModel
引入ViewModel之前,存在如下几个问题: (1)有的时候一个Activity里面嵌套了多个fragment,但是这些fragment里面用的是同一个数据,为了同步这些数据,我们需要用接口来传参,很麻烦 (2)屏幕旋转,会销毁重建,如果数据类型比较简单,同时数据量也不大,可以通过onSaveInstanceState()存储数据.但如果是大量数据,不方便序列化及反序列化,则上述方法将不适用.
提莫队长
2020-06-03
6550
Jetpack:Lifecycle
通常我们都会用MVP模式把业务逻辑和数据处理分开,但是这样做有个小问题:如果在某个生命周期还有别的类要监听 Activity 生命周期变化,那也需要添加许多生命周期的回调方法,比较繁琐。那我们是否可以当 Activity 生命周期发生变化的时候主动通知呢?答案就是使用 Lifecycle 提供的 LifecycleObserver
提莫队长
2020-06-03
4740
finalize() timed out after 10 seconds的解决方案
最近项目的bugly报了一个错finalize() timed out after 10 seconds。最初遇到这个问题,本人一脸懵逼。没写过这个方法怎么会在这里面报错的?查阅了网上的资料才发现,通常这个错误发生在 java.lang.Daemons$FinalizerDaemon.doFinalize的方法中,直接原因是对象的 finalize() 方法执行超时。接下来就有必要看一下Daemons的方法。
提莫队长
2020-06-02
3.7K0
Linux和Android的IPC通信简介
IPC全名为inter-Process Communication,含义为进程间通信,是指两个进程之间进行数据交换的过程。在Android和Linux中都有各自的IPC机制,这里分别来介绍下。
提莫队长
2020-06-02
1.6K0
jdk动态代理和retrofit
1.静态代理 比如说本人要买华为手机,可以自己买,也可以让别人帮着买 public interface Buyer { void buy(); } public class Me implements Buyer { @Override public void buy() { System.out.println("I want to buy HUAWEI"); } } 现在本人比较忙,所以决定让姐姐帮我代购(当然,也可以是其他人) public class
提莫队长
2020-06-02
2850
BreakPad模拟Android native崩溃
Google breakpad是一个跨平台的崩溃转储和分析框架和工具集合。 Breakpad由三个主要组件:
提莫队长
2020-06-02
1.5K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档