移动开发

ggplot2的aes和aes_string

提取umap坐标和metadata信息 reduction_loci <- as.data.frame(Embeddings(pbmc, reduction="umap")) reduction_loci <- cbind(reduction_loci, pbmc[[]]) 常规使用aes的画法: p <-ggplot(reduction_loci, aes(x=UMAP_1,

野指针检测

什么是野指针 维基百科里给的定义: 当所指向的对象被释放或者收回,但是对该指针没有作任何的修改,以至于该指针仍旧指向已经回收的内存地址,此情况下该指针便称迷途指针(即通常说的野指针)。 若操作系统将这部分已经释放的内存重新分配给另外一个进程,而原来的程序重新引用现在的迷途指针,则将产生无法预料的后果。 因为此时迷途指针所指向的内存现在包含的已经完全是不同的数据。 野指针分类: 引用腾讯bugly团

记录一次macbook 安装macOS+win11双系统的历程。包括MacBook电脑恢复、绕过win11限制等

一、MacBook恢复macOS系统,或有问题可以重新用此操作关机状态,同时摁住 option+command+R 三个键,然后再摁开机键,等出现 一个地球的图标即可松开。 然后正常链接wifi,让它自动下载一些组件即可。 这里对硬盘进行重新格式化(因为我这里的MacBook是安装了Window

关于Android framework,大部分人都会掉入的学习误区

在学习Android framework的过程中,大家走回走进一个误区,或者说绕了远路,就是会为庞大的源码而耗费大量心力。在这里还是要提醒大家,不要过于关心那些复杂的函数调用链,学习跟踪方法以及把握整理流程最为重要。 Android源码树异常庞大,如果你想一行不漏地看,这是不可能的,就算你这么干了,效果也不见得好——只见树木,不见森林。打个简单的比方,Activity的启动流程,你不用关心在AMS

Android组件开发

一、背景 一个app随着业务增加,代码放在同一个模块中会越来越臃肿,同时也导致多人开发的一个难度。组件化可以把业务单独分出来,形成一个单独模块,可单独运行、测试等,相互之间不会影响。另外一个优势,如果一个公司有多个app,总会出现一些相同业务,如登录/注册。我们可以单独把公共业务封装成一个单独模块,供所以app使用,提高了开发成本 二、项目结构 如下图1,项目分成了4层,第一层app壳,这个也就是

常用的Flutter第三方库 2022-05-17 周二

简介 不论是iOS开发,还是Android开发,使用第三方库是必不可少的。 现在,切换到Flutter,面临的第一个问题就是该用哪些第三方库? 所有代码都需要自己写?当然不会。 常用的第三方库概览 dependencies: flutter: sdk: flutter # The following adds the Cupertino Icons font to your a

项目优化

图片懒加载,数据懒加载, 路由懒加载 1.图片懒加载原理 1.1 开始时 不设置src属性 1.2 图片在可视区域内,设置src 然后加载图片 1.3 使用API,intersectionObserver 可以用监听元素是否可见 1.4 实际开发中 在vueuse 使用 useIntersectionObserver 1.5 一般封装成全局指令  <img v-lazy="xxxx" ,

Android ImageButton 使用详解

文章目录 一、基本使用 1. XML 中声明 ImageButton 2. 代码中设置图片 二、与普通 Button 的区别 三、高级用法 1. 不同状态下的图片显示 2. 添加点击水波纹效果 3. 圆形 ImageButton 实现 四、实际应用示例 1. 实现一个拍照按钮 2. 实现一个可切换的收藏按钮 五、性能优化与最佳实践

Swift列表中view删除效果

image.png 使用示例: class ViewController: UIViewController { private let listv: listView = { let view = listView() view.layer.cornerRadius = 10 view.layer.masksToBoun