一、问题描述 继承RadioButton,实现一些自定义需求,示例: 在XML 中应用: 然而,运行之后,MyRadioBtn 是不响应点击事件的,点击也无法进行切换。 二、...
一、问题描述 继承RadioButton,实现一些自定义需求,示例: 在XML 中应用: 然而,运行之后,MyRadioBtn 是不响应点击事件的,点击也无法进行切换。 二、...
我们在开发Android library 时,通常会打包aar。如果直接使用默认配置的话,assemble 出来的aar 名字可能并不符合需求,比如有时会在名字中加入当前日期...
@萝卜土豆大西瓜 这个你可能需要遍历每个字符所占字节数并累加,才能正确截断
EditText 最大字符数限制EditText 经常会有限制输入字符长度的需求,限制输入长度的方法有三种: 1. 在XML 文件中设置 2. 通过InputFilter 实际上在XML 中设置,最后也是通...
问题描述 在 macOS 平台执行二进制程序时,遇到 dyld: Library not loaded: xxx.dylib 错误 问题原因 二进制中会记录其依赖的动态库地址...
最近做SDK开发,有个简单的下载功能,为了方便及不增加第三方库,遂采用了系统的DownloadManager来处理下载任务。 官网的说明: The download mana...
DataStore 是Jetpack 组件之一,是Google 开发出来用以代替SharedPreferences 的。DataStore 是基于 Flow 实现的,一种新的...
如下图所示:
ANR产生原因 出现ANR一般有以下几种原因: KeyDispatchTimeout(常见)input事件在5s内没有处理完成logcat日志关键字:Input event ...
当ANR 发生时,查看系统生成的traces 文件有助于我们定位ANR 产生的原因,那么我们该如何从手机中导出traces 文件呢?可以使用下面的方式1. 老版本Androi...
一. 背景 应用页面的打开速度影响着APP的用户体验,也是APP的性能指标之一,任何一个成熟的APP都应该对页面的启动速度进行监控和优化。 二. 相关原理 1. Activ...
一. 背景 Kotlin 已然成为Android 开发的首推语言,我们以前在开发gradle 插件时,通常会使用groovy 语言,那么如果我们想用Kotlin 来开发该怎么...
Mac 安装 omyzsh 后, terminal 瞬间逼格飙升! 但是! terminal init 的时候并不会执行~/.bash_profile、~/.bashrc 等...
rxjava2.x的Observable是不存在背压的概念的,首先博主都没有完全理解什么是背压,背压是下游控制上游流速的一种手段。在rxjava1.x的时代,上游会给下游set一个producer,下游通过producer向上游请求n个数据,这样上游就有记录下游请求了多少个数据,然后下游请求多少个上游就给多少个,这个就是背压。一般来讲,每个节点都有缓存,比如说缓存的大小是64,这个时候下游可以一次性向上游request 64个数据。rxjava1.x的有些操作符不支持背压,也就是说这些操作符不会给下游set一个producer,也就是上游根本不理会下游的请求,一直向下游丢数据,如果下游的缓存爆了,那么下游就会抛出MissingBackpressureException,也就是背压失效了。在rxjava2.x时代,上述的背压逻辑全部挪到Flowable里了,所以说Flowable支持背压。而2.x时代的Observable是没有背压的概念的,Observable如果来不及消费会死命的缓存直到OOM,所以rxjava2.x的官方文档里面有讲,大数据流用Flowable,小数据流用Observable
1. 方法一,命令 结果示例: 这个命令获得的是当前手机中正在活跃的Activity,这些Activity 通过最近任务点击可以直接显示内容。 2. 方法二,命令 结果示例:...
最后的图,在下认为是不正确的,StatusGuard 跟NavigationGuard都是单独的window,他不是在App或者Activity的Window里的