AI笔记本

2026年以前手搓博客一千多篇。如今 Claw、Cursor、Claude 等 AI Agent 横空出世。只需一句话,AI 就能生成文章、调整格式、润色语言,并一键自动发布。欢迎来到 AI 驱动博客时代 🚀

文章列表

Android百分比布局PercentLayout
Android

Android百分比布局PercentLayout

Android百分比布局PercentLayout百分比布局已经不怎么常用了,现在官方力推用ConstraintLayout构建自适应界面 ,解决屏幕适配的问题。但是PercentLayout有时候还是有用武之地的,尤其是在适配屏幕大小不一,使用比例放缩分配布局。比起LinearLayout使用权重适应屏幕来说,PercentLayout是个不错的选择。1、引入PercentLayout使用百分比

1.6k
Activity切换动画
Android

Activity切换动画

Activity切换动画Activity之间切换的时候有动画效果,不同手机系统效果不一样,因为系统框架做了改进。而APP开发者也可以自定义Activity切换动画,让自己的应用变得高大上。1、overridePendingTransition(有效)Activity类中提供了Activity跳转动画方法,通过该方法可以实现Activity跳转时的动画效果。在Activity中定义的部分源码如下 ①

2.4k
Android

Android build.prop系统属性信息

Android build.propAndroid的build.prop文件是在Android编译时刻收集的各种property(LCD density/语言/编译时间, etc.),编译完成之后,文件生成在out/target/product/<board>/system/目录下。在Android运行时刻可以通过property_get()[c/c++域] / SystemProperties_

3.1k
精选
Code

获取系统SDK版本、判断手机ROM

Build获取系统SDK版本Android中部分API的使用,需要在特定的SDK版本之后才能使用,因此在兼容老版本SDK的时候,经常需要判断API的版本。各种Android版本的对应关系参考《Android各版本对应的SDK版本》判断手机ROM有时候需要判断手机系统的ROM,检测ROM是MIUI、EMUI还是Flyme,可以使用getprop命令,去系统build.prop文件(关于build.p

3.7k
Android

strings.xml中的特殊字符:空格,换行等

strings.xml中的特殊字符:空格,换行Android推荐将字符串统一写到values/string.xml中进行保存。目的是方便统一管理,并且利于国际化。但是在这些字符串中直接输入一些符号是不起任何效果的,比如空格,换行,<,>等特殊符号,这就需要使用转义字符来进行转移,这样才能在使用时正确显示字符。在strings.xml字符文件起始加上:1、特殊字符空格 &#160;换行 \n缩进 \

1.8k
Android内存泄漏检测和避免
Android

Android内存泄漏检测和避免

Android内存泄漏检测和避免 Java具有内存自动回收,但是在Android往往经常存在内存泄漏。因为Android开发中存在大量的异步任务等不了垃圾回收,还有很多JNI底层的的内存分配。1、内存泄漏检测好在Android提供了很多内存泄漏检测工具,帮助我们发现内存泄漏。还有大牛开发的库,比如:LeakCanary1.1、Android ProfileMemory Profiler 是 And

1.8k
Android 11来了!
分享

Android 11来了!

Android 11来了! 谷歌突然毫无预兆得放出了Android 11 Developer Preview(安卓11开发者预览版)。预计8月份会发布正式版本。有很多重大的更新,不过有些新增功能,国内的各个手机厂商基本上在原有Android的基础之上都已经有了。1、获取Android 11 从Android Studio内部使用Android 11 Developer Preview设置模拟器。只

1.8k
Android主题Theme style
Android

Android主题Theme style

Android主题Theme探究Android预先定义了很多主题,我们也可以在values/styles.xml文件中自定义主题。1、三个颜色新建一个工程AndroidStudio会在styles.xml中帮我们定义一个默认AppTheme,其中有三个颜色值colorPrimary、colorPrimaryDark、colorAccent,含义如下:2、常用属性: 状态栏、顶部导航栏相关: Win

1.8k 1
ProgressBar及其样式使用详解
Android

ProgressBar及其样式使用详解

ProgressBar1、基本使用和普通控件一样,在布局中添加ProgressBar,布局中设置一些属性还可以在代码中设置一些属性:2、二级进度:secondaryProgress一般缓存,下载进度显示都会用到二级进度条,使用android:secondaryProgress设置。场景:音乐缓存的进度就可以是android:secondaryProgress,而音乐播放进度就是android:pr

4.2k
精选
AndroidStudio中各种中文乱码问题
Code

AndroidStudio中各种中文乱码问题

AndroidStudio中各种中文乱码问题1、编译Java错误信息乱码在出现这个Annotation processors must be explicitly declared now...问题的时候,正好也发现AndroidStudio Build Output错误信息都乱码。经常遇到各种问题,习惯了,现在遇到的问题,都是以后的答案。 1.1、修改项目build.gradle(无效)在整个p

2.4k
Found a swap file by the name filename
Git

Found a swap file by the name filename

Found a swap file by the name filename提交代码的时候,编辑commit提交信息总是提示错误。又出什么幺蛾子了。可能是因为之前提交过程中,自己强行把终端关闭导致后面出错了。出现这个问题是因为vim正在编辑文件或者提交的时候,终止了Terminal终端。从报错提示不难看出.COMMIT_EDITMSG.swp是在commit编辑提交信息的时候的缓存。使用ls -a

2.1k
AndroidStudio更换Terminal
Code

AndroidStudio更换Terminal

AndroidStudio更换Terminal用AndroidStudio自带的Terminal终端太不方便了,是系统自带的cmd.exe如果可以换成Git Bash那样的命令行终端就方便极了。①选择菜单File > Settings,打开设置界面②选择Tools > Terminal 节点③设置Git安装目录下的base工具:..\Git\bin\bash.exe,关闭Terminal再次打开即

1.8k
布局优化 &amp; 过度绘制检测
Android

布局优化 &amp; 过度绘制检测

布局优化 & 过度绘制检测1、选择合适布局一开始就选择一个合适的根布局,是明智的选择。合理的构思有利于减少布局层级。推荐如下优先选择:FrameLayout > LinearLayout > RelativeLayout·减少布局层级,层级越深,测量绘制越复杂耗时。布局应当宽而浅,而不是窄而深。·能用一层RelativeLayout布局最好·不要嵌套使用RelativeLayout布局,因为Rel

1.8k
AndroidStudio 报错:has no declaration in the base values folder
Code

AndroidStudio 报错:has no declaration in the base values folder

在资源文件中正常定义的值,也能编译运行。昨天还正常,今天一打开就报错。应该又是AndroidStudio自身的Bug了。原因众说纷纭,参考Stack Overflow 一篇类似的讨论。解决:File => Invalidate Caches / Restart => Invalidate and Restart.

4.4k
adb Wifi调试
Android

adb Wifi调试

adb Wifi调试手机连着USB线调试拖着一根线不方便,adb可以无线调试,通过无线网连接手机调试。发现一个有趣的,用WiFi将手机和一台电脑连接调试,此时再用USB将手机连接到另一台电脑上,两台电脑可以同时通过USB/WiFi调试同一部手机。1、配置手机IP首先用USB连接电脑,开启重新开启手机端的adb tcpip 端口(要不然你也不知道),指定一个端口号port如果知道手机的ip地址就跳过

1.8k
Android DeepLink跳转
Android

Android DeepLink跳转

Android DeepLink跳转网页通过超链接跳转到APP指定页面,或者通过DeepLink打开特定的应用页面,都是通过Android DeepLink技术实现的。搜索跳转例子1、<data />要想让自己的应用能够通过DeepLink跳转,需要先了解AndroidManifest中的<data />标签。关于<data />及更多AndroidManifest标签详见Android Deve

2.9k
ButterKnife:View注入框架
开源

ButterKnife:View注入框架

ButterKnife:View注入框架1、ButterKnife介绍ButterKnife是注解中相对简单易懂的很不错的开源框架.1.1、ButterKnife优势使用ButterKnife可以提升我们的开发效率,不需要写很多findViewById()方法来找到View对象。Eliminate findViewById calls by using @BindView on fields.Gr

1.6k
git 报错 fatal: index-pack failed
Git

git 报错 fatal: index-pack failed

git 报错 fatal: index-pack failed1、git clone操作出现fatal:index-pack一次在clone仓库的时候出现报错fatal:index-pack因为当前clone文件夹的属性为“只读”,无法写入文件夹属性“只读”取消即可2、git pull报错 fatal: index-pack failed参考这篇博客:git pull报错 fatal: index

1.6k
Word文档格式化显示代码
分享

Word文档格式化显示代码

Word文档格式化显示代码计算机学生怎么能不会遇到在Word中贴代码!也不记得当时论文那么多代码是怎么整到word里的。反正只要一往word里帖代码,格式就是乱七八糟的。网上搜到一位大佬的个人网站:http://www.planetb.ca①输入要格式化的代码,选择语言②点击Show HightLighted,即可生成一个格式化好的网页 ③Ctrl+A全选网页内容复制,粘贴到word,即可④可能会

1.8k
Code

AndroidStudio中使用Java8

AndroidStudio使用java8为了在开发中使用Java新特性,诸如Lambda表达式、函数引用,比如最新的一些依赖库都用到了Lambda语法,如果不修改Java编译的选项就无法成功编译。需要在工程的build.gradle文件中添加如下配置:· 如果只使用Java8中的lambda表达式及函数引用,重复注解功能,对项目的编译版本是没有任何限制的· 使用Java8的Stream流,Func

1.7k