飞飞的AI实验室

用AI放大灵感,把想法变成作品。

排查 Android Studio 编译 module 报 Failed to resolve com.android.support 的过程,根因是 Refactor Rename 重命名 xml 文件时把 build.gradle 中的 test 误改成 test_page,改回原名后即可编译通过。

阅读全文 »

推荐 GitHub 上适合练手的五款 Android 开源项目,包括仿知乎客户端 ZhiHuMVP、新闻应用 ColorfulNews、B 站多媒体选择器 boxing、天气应用 MinimalistWeather 与划词翻译 TranslateApp,均基于 MVP 架构并涉及 RxJava、Retrofit2、Dagger2 等主流库。

阅读全文 »

分析 Android 使用 Fragment 时报 java.lang.IllegalStateException commit already called 的原因,根源是把 Fragment 事务定义成全局变量重复 commit,解决办法是每次提交都获取新的局部事务再 commit。

阅读全文 »

面向程序员的 Git 命令行入门指南,从安装与 git config 配置用户名邮箱讲起,覆盖 init、add、commit、status、diff、log 等常用命令,并整理了 git log 十余个选项的速查表,推荐配合廖雪峰教程学习。

阅读全文 »

梳理 Java 内存管理与垃圾回收机制,依据《Java虚拟机规范》介绍堆、虚拟机栈、栈帧与方法区的职责划分,并说明 GC 由 JVM 低优先级线程自动执行,System.gc() 只能建议而无法强制立即回收。

阅读全文 »

用 Java 实现输入年月日计算该日期是当年第几天,思路是利用 switch 穿透从大月份向前累加天数,按 1、3、5、7、8、10、12 月 31 天并结合闰年判断 2 月取 28 或 29 天,附完整可运行代码。

阅读全文 »

讲解 Java 中 == 运算符与 equals 方法的区别,== 对基本类型比较值、对引用类型比较地址,未重写的 equals 等价于 ==,而 String 与包装类已重写为比较内容,并用字符串常量池示例说明两者结果差异。

阅读全文 »

总结 Android ListView 分割线的设置方法,用 divider 属性控制颜色、dividerHeight 控制高度,去掉分割线可在代码中 setDivider(null) 或在布局里把 divider 设为 @null,透明色方案仅是隐藏且仍占高度。

阅读全文 »

通过十万次循环实测 Java 基本数据类型转 String 的三种方式,结论是 toString() 最快、String.valueOf() 与之接近、加空字符串拼接最慢,但差距都在毫秒级,实际开发中对用户几乎无感知。

阅读全文 »
0%