- 博客(26)
- 收藏
- 关注
原创 Android 推箱子实现(引流文章)
《推箱子 Sokoban Pro》是一款功能完善的经典推箱子游戏,包含88个内置关卡和强大的关卡编辑器。游戏支持横竖屏切换、平滑移动动画、四方向角色动画,提供纯色和经典两套皮肤。特色功能包括无限悔步、关卡刷新、拖拽式编辑器(支持30×30地图)、关卡导入导出等。采用Java/Kotlin开发,使用Room数据库和SharedPreferences存储数据,完全离线运行。游戏逻辑自主实现,关卡数据源自YASS经典合集。支持Android平台,提供APK下载和源码编译选项。
2025-12-10 16:17:57
627
原创 ViewBinding在XML文件更改id后编译器并未同步更新
ViewBinding在XML更改id后未同步更新的问题解决方案:当修改布局XML文件中的控件id后,ViewBinding仍引用旧id名称。经测试发现,将ViewBinding声明从全路径(com.xxx.databinding.ActivityXxxBinding)改为类名直接声明(ActivityXxxBinding)即可解决该问题。该问题在多个Android Studio版本(2024.3.2到2025.2.1.8)中持续存在,通过简化声明方式而非升级环境即可修复。这一发现可帮助开发者避免不必要的环
2025-11-24 22:22:27
197
原创 Dagger2旅途(随机更新中)
Dagger2 依赖注入框架入门指南本文介绍了Dagger2依赖注入框架的基本使用。Dagger2是一个为项目生成依赖注入模板代码的框架,主要用于Android开发。
2025-09-23 10:32:34
618
原创 OpenSSL生成PKCS#1格式的 RSA 私钥
默认情况下,openssl rsa -pubout 生成的公钥是 PKCS#8 格式(-----BEGIN PUBLIC KEY-----)。你的 openssl 版本可能默认生成的是 PKCS#8 格式的私钥(-----BEGIN PRIVATE KEY-----),而不是 PKCS#1(-----BEGIN RSA PRIVATE KEY-----)。如果你已经有 PKCS#8 格式的私钥,如何转换为 PKCS#1。如果是 PKCS#8 格式,它会报错,说明你需要转换格式。
2025-02-19 17:17:31
573
原创 安卓Res国际化文字资源转换AndroidResTranslator
AndroidResTranslator是使用IDEA写的一个安卓多国语言转换小工具。
2024-08-08 16:07:11
1322
原创 安卓文件分享,bean类数据输出,jxl,封装
每次写一个bean类输出都需要一堆编码,哪怕是cv也经常出现问题,所以写了个简单的文件输出。用于接受需要输出的数据,输出的文件名称,输出的文件类型。如有必要,可以定义数据Bean类的某个字段是否输出或者进行日期格式化操作。接口可以根据你的需求进行扩展,但是注意稍后可能因为拓展类过多,导致修改接口需要进行大量改动。另外三个类是 OutputType 的子类,用于实现各个实际类型的封装。等难以理解的字眼,实际上是我也不知道如何命名想出来了的名称。封装数据Bean类的方法,标题和可能需要转换的格式。
2024-01-18 19:27:16
635
2
原创 SurfaceView使用LinearGradient绘制渐变色出现条纹/重影/色纹/横条
SurfaceView使用LinearGradient绘制渐变色出现条纹/重影/色纹/横条
2024-01-11 15:45:38
776
1
原创 ActivityResultLauncher/registerForActivityResult出现死循环/崩溃
检查你的Manifest文件是否配置了权限。代码是没有什么问题的。
2023-10-18 15:04:41
552
1
原创 关于高版本Android Studio使用KTS(koltin)作为脚本代替Gradle构建的细节
Unexpected tokens (use ';' to separate expressions on the same line)Too many characters in a character literal 'https://maven.aliyun.com/repository/public
2023-10-17 15:47:11
2057
1
原创 emulator-5556 offline问题解决方案
我在使用模拟器时,感觉模拟器动画太卡,于是点击软件重启按钮。但是很不巧,as此时有突然卡住了,模拟器还在运行。为了退出软件,我直接进了系统的任务管理器杀掉了as进程。但是再次打开as运行模拟器出现模拟器运行,但是提示未运行。并且多出一个名称为 emualtor-5556 的模拟器。
2023-07-01 16:07:17
718
原创 MVP初步理解使用 MVP+Retrofit+Lifecycle View契约类
MVP初步理解使用 MVP+Retrofit+Lifecycle+契约类
2023-01-17 22:47:53
743
2
原创 Banner2.1.0出现Unable to instantiate activity ComponentInfo/ClassNotFoundException: Didn‘t find class
由于我在项目需求当中需要制作一个简易的引导页面,旧版本的Banner无法控制页面是否无限轮播,因此我将Banner更换到2.0版本。
2023-01-09 16:16:04
566
2
原创 com.google.gson.internal.bind.ReflectiveTypeAdapterFactory
Gson.toJson 引发的内存溢出
2022-11-20 14:52:37
1258
原创 解决:Unable to add window -- token android.os.BinderProxy is not valid; is your activity running?
尝试复用Dialog出现的问题
2022-10-13 17:06:45
7435
原创 在使用 BottomNavigationView + NavHostFragment 当中出现的一些问题
在使用 BottomNavigationView + NavHostFragment 当中出现的一些问题新建项目后我尝试上手Google推荐的底部导航控件与NavHostFragment进行联动,在此期间出现了两个小问题:在进行 NavigationUI.setupActionBarWithNavController() 时,出现了 setTitle() 空指针的问题。在进行 NavigationUI.setupWithNavController() 时,出现了 BottomNavigationVi
2022-05-25 16:05:29
1137
原创 Android 原生 RadioGroup+ViewPage/安卓自带原生控件BottomNavigation 实现传统软件主页面切换
Android 原生 RadioGroup+ViewPage 实现传统软件主页面切换文章目录Android 原生 RadioGroup+ViewPage 实现传统软件主页面切换一、RadioGroup+ViewPage 实现1.新建项目新建一个空项目2.编写主页的XML3.为底部导航编写selector文件4.java部分1.第一步新建一个空的fragment2.第二步新建ViewPage的适配器类3.第三步 为主页的ViewPage设置适配器4.第四步 为底部导航与ViewPage进行关联联动一、
2022-03-20 13:09:04
3378
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅