onMeasure被执行两次原理解析
目录什么情况下会onMeasure会执行?为什么onMeasure会被执行两次?分析外部是如何多次调用measure方法的什么情况下会onMeasure会执行?进入View的measure方法:void measure(){...
目录什么情况下会onMeasure会执行?为什么onMeasure会被执行两次?分析外部是如何多次调用measure方法的什么情况下会onMeasure会执行?进入View的measure方法:void measure(){...
目录问题分析问题解决方法Android开发笔记:关于SeekBar在刷新使用中的一些问题问题今天在用Navigation 在两个Fragment之间导航时发现了从第二个Fragment返回到第一个Fragmen...
目录何为XML数据如何解析XML数据1.Pull解析2.简单的Pull解析3.SAX解析何为XML数据XML 指可扩展标记语言(eXtensible Markup Language)。可扩展标记语言(英语:Extensible Markup...
目录简介flutter中的动画widgetAnimatedContainers使用举例总结简介什么是动画呢?动画实际上就是不同的图片连续起来形成的。flutter为我们提供了一个AnimationController来...
目录前言一、清缓存重置Adapter的方案二、TabView+ViewPager的差分刷新2.1 使用arguments的方式2.2 使用Tag的方式三、自定义Tab或第三方Tab四、ViewPager2的区别总结前言哎...
目录一、需要封装哪些属性二、确定基类WidgetInkWellGestureDetectorInkResponse原始指针事件三、基类实现具体使用四、相关总结在短时间的接触Flutter之后,有一个问题一直摆...
目录前言1.ViewRootImpl哪来的?2 ViewRootImpl 一个View链渲染的中转站3 不能在子线程操作View?4 View 挂载5 View.post()的Runnable最终在哪执行了?6 为什么View.post 可以获...
目录1、遇到的问题2、 能不能通过BLE传输文件3、 如何传输文件4、如何保证可靠性和稳定性1、超时重传2、序列号3、数据校验5、 传输速度提升 RequestMtu1、遇到的问题公司要...
目录正文Flutter DateTime 常用操作1. 获取当前日期时间2. 获取指定日期时间3. 获取时间戳4. 将时间戳转换为日期时间5. 获取日期时间的年、月、日、时、分、秒6. 获取日期...
在 Android 中,创建子线程的方式通常有以下几种:使用 Thread 类进行创建 Thread 是 Java 中的一个类,可以通过继承 Thread 类或者创建 Thread 对象并传入 Runnable 对象来创建...
目录1.卡顿分析系统介绍2.思路介绍2.1方法运行数据采集2.1.1方法ID映射2.2.2函数记录能力2.2.3.运行方法记录内容2.2帧数据采集2.2.1于传统方式的区别2.2.2FrameMatrix的能...
目录介绍执行ML Kit银行卡识别输出结论如何使用 Jetpack Compose 创建翻转卡片效果介绍在电子商务和银行应用程序中输入卡信息是很常见的情况。我认为让用户更轻松地处理这...
首先我们需要知道mvp所代表的含义,m即model可以理解成用来获取数据和处理数据,v即view可以看成activity和fragment用来显示数据和处理交互,p即presenter可以理解成用来提供数...
目录现象排查 & 尝试修复源码探究更好的修复方案现象点击搜索框,打开新的 webview 页面时,出现了黑色过度页面。排查 & 尝试修复找到了一台可复现的手机,一加 8 (android 13),检查...
目录一、思路二、具体实现1、方式一:可以全局添加和获取任意ViewModel2、方式二:更方便在Activity和Fragment中调用一、思路viewModel对象是存储在ViewModelStore中的,那么如果...
目录前言1、和系统进程打交道的桥头堡2、为什么使用ContentProvider可以实现初始化3、Activity是什么时候开始渲染的4、原来还可以监控组件的生命周期5 、SharedPreference...
目录Android Studio 手机投屏如何开启功能投屏效果Android Studio 手机投屏当我们在线上做技术技术分享或者功能演示时,有时需要共享连接中的手机屏幕,通常我们会求助于 Vysor...
目录flutter简单使用前言一、布局介绍二、本地图片使用三、网络数据解析四、路由使用五、插件的使用使用Flutter实现短视频上滑翻页效果前言PageView 组件介绍使用示例PageC...
目录适配器ListView的简单用法关于ListView性能的优化ListView的鼠标监听事件RecyclerView的简单用法在使用ListView和RecycleView之前,我们得先了解适配器的概念。适配器具...
ViewModel它的作用是什么呢ViewModel 类旨在以注重生命周期的方式存储和管理界面相关数据。ViewModel 类让数据可在发生屏幕旋转等配置更改后继续留存(官方解释)看到这里我...
目录简介构建一个要动画的widget让图像动起来总结简介之前我们提到了flutter提供了比较简单好用的AnimatedContainer和SlideTransition来进行一些简单的动画效果,但是要完全...
目录MTU是什么?BLE版本不同MTU不同自定义MTUMTU是什么?MTU是指在一个协议数据单元中(Protocol Data Unit, PDU) 有效的最大传输Byte。MTU默认是23byte,但是供我们使用的只有20b...
目录效果图使用WindowManager实现分析问题参考如果想实现一个在桌面显示的悬浮窗,用Dialog、PopupWindow、Toast等已经不能实现了,他们基本都是在Activity之上显示的,如果想实...
目录replaceAll 方法基本语法提取匹配的部分替换匹配的部分replaceAll 方法可以使用正则表达式和 replaceAll 方法来替换字符串中的HTML标签。这是一个示例代码:String html...
目录概述问题分析原理分析解决思路行动0x01:保留旧ID获取旧ID:public.xml复用旧IDAapt2命令保留新资源ID0x02:修改资源ID需要修改的位置更新R Smali普通IDR$styleable.smali其...
目录密封类密封接口何时使用密封类与密封接口密封类和密封接口是 Kotlin 中允许创建受限类层次结构的两个特性。这两个构造用于定义一组有限的可能子类型,并防止在声明的层次...
目录Dagger2注入框架原理简要分析示例代码生成代码分析DaggerActivityComponent类MainActivity_MembersInjector何处真正产生了实际参数简要流程图(仅适用于本示例)Dagger2...
目录何为碎片特点如何引入碎片静态引入动态加载碎片的通信活动和碎片间的通信碎片和活动间的通信碎片和碎片间的通信何为碎片官方文档中提到:A fragment represents a modula...
目录引言背景方案前置知识JavaScriptCore 简介JavaScriptCore 类型API 介绍JSContextGroupCreateJSGlobalContextCreateInGroupJSEvaluateScript关键代码示例JNI(Java Nativ...
目录前言使用TabBar实现TabBar介绍TabBar的重要属性说明TabBarView介绍TabBarView的重要属性TabBar总结TabBar实现底部导航的例子BottomNavigationBar实现BottomNavigationB...
目录Service 和 AIDL 的使用1. Service1.1 Service 的基本生命周期1.1.1 startService1.1.2 bindService1.2 Service 的启动方式1.2.1 startService1.2.2 bindService1.2.3...
目录1.创建一个动画控制器2.使用手势移动Widget3.创建一个动画Widget4.计算速度以模拟弹簧运动物理模拟可以让应用程序的交互感觉逼真和互动,例如,你可能希望为一个 Widget 设...
1 for 循环Flutter 中循环语句的使用方式与其他编程语言比较类似,常见的包括 for 循环和 while 循环。Flutter 中的 for 循环语法如下:for (var i = 0; i < count; i++) {...
SystemChromeSystemChrome 是 Flutter 提供的一个类,用来控制应用程序的系统级别行为,如设置全屏,状态栏等。设置状态栏透明SystemChrome.setSystemUIOverlayStyle( SystemUiO...
目录按照整数值进行排序按照Person的年龄字段进行排序按照整数值进行排序以使用Dart的 sort() 方法对Flutter中的List进行升序或降序排序。 sort()方法需要传递一个比较函数...
目录1. UseCase 的用途2. UseCase 的特点2.1 不持有状态2.2 单一职责2.3 可有可无3. 如何定义 UseCase3.1 Optional or Mandatory?3.2 Class or Object?3.3 Class or Function...
目录1. Shortcuts 组件的简单使用2. 快捷键与焦点的关联在桌面端的开发中,键盘快捷键是非常常见而必要的,比如 Ctrl + F 搜索, Ctrl + C 复制等。Flutter 既然可以开发桌面端应...
目录API介绍简单使用API介绍API地址是对libmp3lame.so的编码部分最基础接口的介绍,本库特包含了增加id3标签和mp3的解码的支持。这里并不是完整的文档,但是你可以通过查看"inc...
目录1.什么是OOM?为什么会引起OOM?2.避免Bitmap引起的OOM技巧小结1)采用低内存占用量的编码方式2)图片压缩3.及时回收图像4.其他方法1.简单通过SoftReference引用方式管理图片资...
目录先看效果池化思路创造工厂轮询切换动画监听对外能力完整代码先看效果支持暂停,恢复,view自定义和池化回收复用。使用上,只需要引入xml,并绑定factory即可,内部会在attach时自...
目录引言1. 枚举类2. 枚举属性3. 枚举函数4. 枚举构造函数5. 枚举扩展函数结语引言翻译自:towardsdev.com/mastering-e…Kotlin 作为现代的、强大的编程语言,可以给开发...
目录Android 中 ActivityAndroid的UI层级绘制体系View的加载流程View的视图绘制流程剖析ViewRootImpl的performTraversals()方法完成具体的视图绘制流程View的layout流程分...
目录简介我们的目标带滤镜的图片打造filter按钮打造可滑动按钮最后要解决的问题简介很多时候,我们需要一些特效功能,比如给图片做个滤镜什么的,如果是h5页面,那么我们可以很容易...
目录一、换肤方案1.1 Resource方案1.2 AssetManager方案二、Resource换肤三、Hook LayoutInflater方案3.1 工作原理3.2 Android-Skin-Loader3.2.1 使用流程3.2.2 皮肤包加载...
目录项目需求1、添加权限2、代码实现项目需求最近项目中有一个需求,需要清除Recent tasks列表中的所有task,相当于点击最近-全部清除的动作。具体实现如下1、添加权限在Androi...
目录 1. 升级编译环境开发环境TargetSdkVersion >=34的修改对隐式 intent 和待处理 intent 的限制在运行时注册的广播接收器必须指定导出行为安全的动态代码加载(插件化/热...
目录前言FractionallySizedBox介绍仿京东商品详情底部操作栏总结前言不知道大家有没有留意京东 App的商品详情页,在底部有5个操作按钮,分成了3组,然后每一组占了1/3的宽度。这...
目录一、简介二、具体步骤1.在build.gradle中开启databinding2.在BaseActivity的封装,主要是通过反射的方式获取。如下3.在Activity中使用如下4.在BaseFragment的封装5.在Fra...
目录1. 安装jdk1.82.安装Android Studio 并安装 SDK 与NDK 1. 安装jdk1.82.安装Android Studio 并安装 SDK 与NDK SDK Tools 选择 26.0.3 SDK Platform 选择 Android SDK P...
目录双屏异显的三种方式1、通过adb命令将app启动在指定的屏幕2、通过Presentation3. 通过startActivity双屏异显的三种方式1、通过adb命令将app启动在指定的屏幕adb shell a...