
ViewFlipper飞掠视图
ViewFlipper同样是滚动视图,可以作为APP首页的banner。效果和ViewPager一样,名气却远不如ViewPager。1、使用ViewFlipperViewPager是通过设置ViewPagerAdapter添加数据的,如何向ViewFlipper中添加View呢?2、布局中添加子控件直接在布局中ViewFlipper节点下添加控件,所有在ViewFlipper节点下的控件都会被当
2026年以前手搓博客一千多篇。如今 Claw、Cursor、Claude 等 AI Agent 横空出世。只需一句话,AI 就能生成文章、调整格式、润色语言,并一键自动发布。欢迎来到 AI 驱动博客时代 🚀

ViewFlipper同样是滚动视图,可以作为APP首页的banner。效果和ViewPager一样,名气却远不如ViewPager。1、使用ViewFlipperViewPager是通过设置ViewPagerAdapter添加数据的,如何向ViewFlipper中添加View呢?2、布局中添加子控件直接在布局中ViewFlipper节点下添加控件,所有在ViewFlipper节点下的控件都会被当

MySql备份命令mysqldump ,站点数据备份网站一直放在华为云,但是今年年底到期。也不打算续了,备案太麻烦。准备迁移到阿里云,就要备份博客数据、图片、文件、文章都先备份到本地。1、mysqldump备份最开始创建站点的时候,网址的所有数据表都放在xiuno4这个数据库中。只需要备份这个数据即可。备份MySql数据库有多种方法,这里只用mysqldump命令进行备份:-u root 是用户名

按键KEYCODE1、onKeyOnKeyListener 监听接口,OnKeyListener只检测控制键,不会检测文本键(数字、字幕、标点等),实现onKey()方法:给指定的控件添加OnKeyListener注意:①返回true表示处理完,不再进行Key事件的分发。返回false,表示继续向后面处理,比如输入到EditText中。②onKey()每次都会收到两次重复的按键编码,一次是KeyE

1、扫描手机已安装APP 通过PackageManager可以获取手机端已安装的apk文件的信息1.1、获取本机所有已安装应用PackageManager通过getInstalledPackages(flag)获取,传入flag为0表示所有APP。1.2、获取本机系统应用(packageInfo.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM

1、扫描手机存储的APK安装包废话少说直接上代码,借助ContentResolver查询系统APK的媒体类型"application/vnd.android.package-archive",通过"mime_type=\"application/vnd.android.package-archive\""筛选,即可获得手机存储的所有APK文件。2、获取APK包中的信息通过PackageManage
GuideBackgroundColorAnimation 详解:ViewPager 滑动时背景色渐变很多 App 的引导页(新手引导/功能介绍)有个"高级感"效果:用户在 ViewPager 上左右滑动切换页面时,整个背景颜色会随着滑动进度平滑过渡——从蓝色渐变到橙色,再从橙色渐变到紫色,像调色盘一样丝滑。这个效果就是 GuideBackgroundColorAnimation 要做的事。虽然库

内存泄漏检测库:LeakCanaryLeakCanary是Square公司基于MAT开源的一个工具,专门为Android开发的一个工具,用起来非常方便。。Git地址:https://github.com/square/leakcanary官方地址:https://square.github.io/leakcanary/1、配置项目build.gradle在build.gradle文件中添加依赖。注

IntentService使用详解之前已经学习过Android的四大组件之一Service,但是Service和前台运行在一个进程里,不能再Service中执行耗时操作,否则需要开启线程,执行完毕之后再借助Handler传回到主线程处理,Android提供了很多线程间通信的消息机制。Google又进一步进行了封装,提供了IntentService,内部对Service和Handler进行了封装,做
Gson解析json1、JSONjson数据不用再多说了,轻量级的数据传输交换。普遍应用于移动端和服务端的数据获取。比XML解析速度更快速,更省电。在Android中可以借助JSONObject和JSONArray解析json数据,还可以借助第三方工具快速解析如谷歌的GSON、阿里巴巴的fastjson。GitHub:google/gson2、基本用法2.1、依赖首先,使用Gson要在build.

Android判断网络连接、监控网络状态1、判断网络状态通过ConnectivityManager和NetworkInfo进行相关网络状态的判断。需要相应的权限。1.1、当前手机是否有网络连接1.2、WiFi网络是否可用1.3、当前手机移动网络是否可用1.4、当前网络连接的类型上面的那些方法目前为止都还可以使用(@SuppressWarnings("deprecation")),不过已经被Andr

AsyncTask:异步任务多线程开发在Android中很常见,网络请求,图片加载,JSON解析等等。而且Android也提供了非常丰富的多线程方法,Thread、Runnable、Handler等等。AsyncTask更进一步做了封装,直接开启一个任务,内部在子线程中处理耗时任务。还能在UI线程中更新界面。关于AsyncTask的原理参考《源码颇析AsyncTask工作原理》。1、AsyncTa

Pinyin4j:最流行的汉语转拼音库Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换,拼音输出格式可以定制,在项目中经常会遇到需求用户输入汉字后转换为拼音的场景。官网:http://pinyin4j.sourceforge.net/下载:https://sourceforge.net/projects/pinyin4j/files/1、导入Pinyin4j两种方式导入Piny

git rebase之前每次自己本地已经有提交了,在pull新的代码下来,就会产生一个空的commit,这是来合并同一个分支不同开发者的提交。--rebase的本意是想让事情的发展看起来很连续和优美,而不是多出很多无用的merge commit 。1、图解rebase正常情况下的开发分支提交:两个开发者各自在本地继续commit C进行开发,并且提交了。如果一个人提交到了服务器,另一个人本地提交了
Android SQLite 报错详解:unable to open database file (code 14)在 Android 上用 SQLite,有一个"神出鬼没"的崩溃:SQLiteCantOpenDatabaseException: unable to open database file(错误码 code 14)。它往往不是数据库本身坏了,而是 SQLite 临时文件写不进去导致的
Google Breakpad 崩溃收集系统详解Google Breakpad 是一套开源的跨平台崩溃报告系统,由客户端库、符号卸载器和 Minidump 处理器三大组件构成。它能在应用程序崩溃时生成紧凑的 dump 文件,并通过符号解析还原出可读的 C/C++ 堆栈跟踪,是 Native 层 Crash 收集的行业标准方案。1、工具概述在 Android 开发中,JNI 层的 Crash 问题一

PreferenceScreen 设置项应用一般都有设置界面,这些通常通过SharedPreference保存在手机上(SharedPreference参考Android存储相关:SharedPreference),界面也要单独写。好在Android为我们提供了一个强大的设置界面PreferenceScreen。通过这个构建设置页面,点击界面切换设置的同时,后台也自动保存了相关数据。1、Prefe

输入法Android中输入法弹框是比较常见,但也时不时遇到各种问题。页面已经退出了输入法的输入框莫名其妙的还在,经常在各种APP中遇到这种情况。有时打开一个页面,需要输入内容,这时候如果自动弹出输入框,用户体验也比较好,但是有时候会出现输入框不能自动弹出或者弹出又立马收起的情况。 等等各种玄学问题。1、EditText获得焦点自动弹出输入法只需要设置两处即可让EditText自动弹出输入法,①设置
SensorAndroid设备支持种类众多的传感器,诸如光线传感器、加速度传感器、磁场传感器、压力传感器等等。应用场景很丰富,比如用在手机自动调整亮度、游戏里的方向控制等等。1、SensorManager传感器管理类,管理手机上的各种传感器。这个类提供的各种方法可以访问传感器列表、注册或解除注册传感器事件监听、获取方位信息等。通过getSystemService()获取SensorManager实