- 博客(165)
- 收藏
- 关注
原创 斑马打印机配置网络/打印标签过程记录
斑马便携式打印机ZR328连接网络和蓝牙,在cordova+vue混合开发的apk项目中能够ping通打印机并打印ZPL标签。
2025-12-01 09:21:26
666
原创 斑马打印机中二维码相关的ZPL指令
参数常用值说明方向 (a)N正常方向模型 (b)2标准 QR 码放大因子 ©310控制大小,根据需要调整纠错等级 (d)H最高容错,最常用掩码 (e)7自动选择最佳掩码数据模式QA,在^FD中,用于编码8位字节数据(通用)字符集^CI28编码中文等 Unicode 字符时必须从最简单的形式^BQN,2,10开始。在^FD行中,始终使用QA,作为数据前缀,因为它最通用。如果需要编码中文,务必在标签开头加上^CI28。打印后务必进行扫描测试,以确保尺寸和容错率满足你的需求。
2025-11-24 09:49:27
680
原创 android中,对话框用fragment 还是 dialog ?
对于大多数弹框需求,推荐使用 DialogFragment提供了良好的生命周期管理支持配置变化灵活性适中代码结构清晰只有在非常简单的情况下使用普通 Dialog,在极其复杂的情况下才考虑使用普通 Fragment 作为弹框。
2025-11-19 13:25:56
302
原创 android中xml文件和ID命名
view_ + 视图名称view_header.xml # 头部视图view_footer.xml # 底部视图view_search_bar.xml # 搜索栏视图。
2025-11-17 09:41:29
147
原创 在Java/Android中,List的属性和方法
有序性- 元素按插入顺序存储索引访问- 可以通过索引快速访问元素允许重复- 可以包含重复元素允许null- 可以包含null元素(取决于具体实现)动态大小- 大小可以自动调整。
2025-11-14 14:36:14
556
原创 android/java中gson的用法
/ 构造方法、getter、setter@Override@Overridetry {.create();
2025-11-04 09:25:53
243
原创 JavaScript 函数命名规则和约定
动词用途示例get获取数据getUser()set设置值create创建新实例update更新现有数据delete删除数据find查找数据findUser()filter过滤数据map转换数据mapToDTO()reduce聚合数据validate验证数据format格式化数据parse解析数据handle处理事件on事件监听onLoad()is布尔判断isValid()has包含判断can能力判断canEdit()should条件判断。
2025-10-20 11:13:10
416
原创 android中ViewModel 和 onSaveInstanceState 的最佳使用方法
永远使用ViewModel用来持有所有非UI状态的核心数据。防止因配置更改导致的不必要数据重载(如网络请求、数据库查询)。谨慎使用只用来保存恢复UI所必需的、轻量的、可序列化的状态(ID、位置、临时文本)。为应对进程死亡的场景提供保障。分工合作ViewModel保证配置更改时体验流畅。ViewModel共同保证进程死亡后体验连贯。不要滥用切勿将大型对象(如Bitmap)或复杂结构放入Bundle,这会导致。如果UI状态非常复杂,考虑使用。
2025-09-12 09:25:40
1009
原创 pm2 常用命令
启动一个服务,携带 --name 参数添加一个应用名,携带参数 --watch 将观察修改重启服务,例 pm2 start ./bin/www --watch --name myProjectName。14.查看某个服务的输出日志: pm2 logs myProjectName。12.删除服务:pm2 delete myProjectName。6.停止服务:pm2 stop myProjectName。13.查看所有服务的输出日志: pm2 logs。5.停止所有服务进程:pm2 stop all。
2025-09-10 10:09:21
518
原创 windows常用命令
查询dns解析域名记录:nslookup+域名,如:nslookup www.baidu.com, 其是,nslookup全称是name server lookup。查看dns和ip全部信息,cmd中,ipconfig -all 回车。cmd快速进入指定文件夹方法: 打开文件夹,地址栏中输入cmd回车。2.查看IP,CMD中,ipconfig回车。netstat -an查看端口状态。远程桌面连接:mstsc。
2025-09-10 09:51:26
107
原创 android/java中,配置更改导致activity销毁重建的解决方法
配置更改(Configuration Change)是指设备状态发生改变,从而可能影响应用资源的获取和当前UI的呈现。当配置更改发生时,Android系统默认的行为是销毁并重新创建正在前台运行的Activity(以及其中的Fragment)。这样做的目的是为了让应用能够自动加载与新配置相匹配的替代资源(例如横屏布局、不同语言的字符串等)。数据存储位置屏幕旋转后是否保留?原因和说明Activity 的成员变量否Activity 实例被完全销毁,新实例是全新的对象。Fragment 的成员变量通常否。
2025-09-08 10:20:10
1242
原创 Android/Java 泛型全面详解
泛型是Java 5引入的特性,允许在定义类、接口和方法时使用类型参数,提供编译时类型安全检查。✅ 集合类操作✅ 通用工具类和组件✅ API接口设计✅ 需要类型安全的场景✅ 代码复用的需求。
2025-09-05 16:27:31
418
原创 Android/Java 中接口(Interface)的使用场景、用途和方法
这是 Android 开发中最常见的接口用法。// 1. 定义回调接口// 2. 在一个服务类中持有接口引用并提供设置方法// 模拟下载过程...try {// ... 下载逻辑// 3. 在完成后回调= null) {= null) {}).start();// 4. 在Activity中实现接口并设置监听器@Override// 设置监听器// 5. 实现回调方法@Override@Override接口是 Java/Android 实现抽象多态和。
2025-09-05 10:32:26
1148
1
原创 Android/Java 异常捕获
情况是否需要捕获理由受检异常必须编译器要求运行时异常通常不需要通常是编程错误错误不需要严重系统问题可恢复的错误需要给用户第二次机会无法处理的异常不需要应该让上层处理只在你知道如何正确处理异常时才捕获它。否则,让异常传播到能够适当处理它的层级。// 自定义受检异常// 自定义非受检异常try {// 模拟网络请求// 正常请求} else {throw new NetworkException("网络不可用", 1001);
2025-09-03 16:26:49
782
原创 android/java项目常见的项目结构
最合理、最现代的项目结构是:以“按功能/模块分包”为主,顶层辅以datadomaindi等共享模块,并结合MVVM等清晰架构进行组织。给你的建议:从按功能分包开始:即使是新项目,也立即采用这种结构。不要等到项目复杂了再重构。功能划分粒度:功能的划分要合理。例如login(登录)、home(首页)、profile(个人资料)、settings(设置)都是典型的功能模块。提取共享层:将datadomain(包含Repository接口和UseCase),di放在顶层,供所有功能模块使用。
2025-09-03 11:13:25
1116
原创 Android Activity 任务栈详解
Activity 任务栈(Task Stack)是 Android 系统中用于管理 Activity 的后进先出(LIFO)栈结构。每个任务栈包含一组相关的 Activity,用户可以通过返回键在这些 Activity 之间导航。
2025-09-02 16:14:53
692
原创 安装软件时如何修改安装地址(Notion为例)
有些软件在安装时默认安装在C盘,比如目前遇到的Notion,没有选择框让你修改安装地址,直接安装在C盘里,但C盘内存容易满,这时就需要用命令来选择安装地址了。以下是我用命令安装Notion的步骤。
2025-09-01 17:00:26
644
2
原创 React中纯 localStorage 与 Context + useReducer + localStorage对比
如果觉得 Context + useReducer 太重,但需要全局状态管理,推荐使用。将状态提升到全局,通过 Context 共享,并自动同步到。的状态管理方案有显著区别,主要体现在。在 React 中,直接使用。
2025-09-01 15:17:08
894
原创 Android/Java 中创建类实例的各种模式
创建相关或依赖对象的家族,而不需要指定具体类。模式优点缺点适用场景使用频率new 关键字简单、高性能、明确紧耦合、缺乏灵活性简单对象、内部使用⭐⭐⭐⭐⭐静态工厂有名称、可控制、可缓存不能继承、不易发现需要控制创建逻辑⭐⭐⭐⭐建造者参数灵活、可读性好代码冗余、创建开销多参数对象、配置复杂⭐⭐⭐单例全局唯一、节省资源全局状态、测试困难全局管理、资源密集型⭐⭐⭐⭐依赖注入解耦、易测试、生命周期管理学习曲线陡、调试复杂中大型项目、需要架构⭐⭐⭐⭐抽象工厂产品族一致性、开闭原则。
2025-09-01 14:20:59
1921
原创 Android/Java中枚举的详解
/ 带属性的枚举定义// 枚举值及其属性OK(200, "OK", "请求成功"),CREATED(201, "Created", "资源创建成功"),BAD_REQUEST(400, "Bad Request", "客户端请求错误"),NOT_FOUND(404, "Not Found", "资源未找到"),INTERNAL_ERROR(500, "Internal Server Error", "服务器内部错误");// 属性字段(通常为final)
2025-08-27 14:04:16
574
原创 android/java中主线程和子线程的详解
UI线程,也称为主线程(Main Thread),是Android应用启动时由系统自动创建的第一个线程,是一个特殊的、预先创建好的单线程消息循环。你的应用入口点(如的onCreate方法)就是运行在这个线程上的,系统为每个应用分配了且仅有一个UI线程,是唯一有权限直接修改UI的线程。一个普通的线程:它是的一个实例。一个特殊的消息循环线程:它内部运行着一个Looper和,不断地处理消息(Message)或 Runnable 对象。场景执行线程原因网络请求子线程避免阻塞UI线程导致ANR。
2025-08-27 13:24:51
700
原创 Java 中判断变量值
/ 必须重写equals和hashCode方法@Override@OverrideSystem.out.println("两个Person对象相等");
2025-08-18 11:01:58
416
原创 React hook之useRef
useRef提供了一种访问 DOM 节点的方式可以存储不会触发重新渲染的可变值在组件的整个生命周期内保持引用不变是集成第三方库和实现高级模式的利器。
2025-06-09 10:23:52
1294
原创 React状态管理Context API + useReducer
在 React 中,Context API + useReducer 是一种轻量级的状态管理方案,适合中小型应用或需要跨组件共享复杂状态的场景。它避免了 Redux 的繁琐配置,同时提供了清晰的状态更新逻辑。类似于 Redux 的 reducer,用于处理状态更新逻辑:(2) 创建 Context 和 Provider使用 创建 Context,并用 管理状态:(3) 在顶层组件包裹 Provider(4) 在子组件使用状态通过 获取 和 :2. 数据持久化Context + us
2025-06-05 16:50:20
754
原创 React hook之userReducer
是一个用于管理复杂状态逻辑的 Hook,它类似于 Redux 中的 reducer 模式,但更轻量且适用于组件内部或结合 Context API 实现全局状态管理。如果逻辑复杂,可以按功能拆分成多个 reducer,再用。外处理异步逻辑(如 API 请求),完成后调用。尽量扁平化状态结构,便于更新。在 React 中,
2025-06-05 16:48:15
696
原创 Android开发中控件属性全解析
Android提供了丰富的控件属性系统,可以精细控制UI元素的外观和行为。以下是Android开发中的各类控件属性。 - 控件宽度 - 控件高度(取值同上)/ - 最小尺寸/ - 最大尺寸 - 在LinearLayout中按比例分配空间 - 外边距,本组件离上下左右各组件的外边距 - 内边距在res/values/attrs.xml中定义:使用:十二、主题与样式属性 - 应用主题 - 应用样式 - 文本外观样式 - 强调色 - 主色 - 深主色 - 窗口背景以上是Android开发中
2025-05-13 10:24:08
1094
原创 Android中RelativeLayout相对布局使用详解
RelativeLayout提供了灵活的视图定位方式,特别适合需要根据其他视图位置来确定自身位置的布局场景。合理使用RelativeLayout可以减少嵌套布局层次,提高布局效率。但在复杂布局中,可能需要考虑使用ConstraintLayout以获得更好的性能和更灵活的布局方式。
2025-05-13 09:18:35
1150
原创 Android中ConstraintLayout约束布局使用详解
ConstraintLayout是Android中最强大灵活的布局之一,它通过约束关系来定位和排列视图,通过纯XML实现复杂的布局效果,而无需多层嵌套,这大大提高了布局性能。
2025-05-12 16:29:33
1578
原创 CSS3 伪元素(Pseudo-elements)大全
CSS3 伪元素用于选择元素的特定部分,以双冒号开头(CSS3 规范推荐写法,但单冒号也支持以保持向后兼容)。
2025-05-12 10:14:29
582
原创 CSS3 伪类和使用场景
root是CSS中一个非常有用的伪类选择器,它代表文档树的根元素。在HTML文档中,:root就相当于<html>元素,但具有更高的优先级。核心作用定义全局CSS变量(自定义属性)作为样式声明的最高优先级位置提供跨文档一致性(在SVG或XML中也能使用)实际应用示例下面是一个展示:root。
2025-05-12 10:11:45
716
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅