03 2023 档案
摘要:#import <Foundation/Foundation.h> NS_ASSUME_NONNULL_BEGIN @interface NSDictionary (SafeAccess) @end NS_ASSUME_NONNULL_END #import "NSDictionary+SafeAc
阅读全文
摘要:#import <Foundation/Foundation.h> NS_ASSUME_NONNULL_BEGIN @interface NSArray (SafeAccess) @end @interface NSMutableArray (SafeAccess) @end NS_ASSUME_N
阅读全文
摘要:日常使用中经常会出现按钮重复点击导致的数据重复提交问题,从而导致数据出错,常用的解决办法有 1、在发起请求的时候来一个全屏的loading这样在loading期间按钮就无法被点击,这种方式有个弊端就是loading弹窗起来需要几百毫秒时间左右,在这段时间期间用户如果手速过快,仍然可以触发多次点击事
阅读全文
摘要:kvo是成对出现的,如果添加了监听,就要到必要的时候移除监听,如果重复移除监听就会导致闪退问题,解决方法也很简单,通过一个对象来管理kvo的添加和移除,添加了kvo就保存起来,移除的时候先拿到添加的列表,移除已经添加的,如果已经移除过,则return防止重复移除导致闪退,具体代码如下: @inter
阅读全文
摘要:在iOS中定时器的循环引用会导致定时器无法正常关闭,页面无法正常释放导致内存泄漏。 正常来讲 我们的vc强引用定时器 定时器强引用vc从而导致引用环无法结束,通过中间人的方式可以解决相互之间引用的问题 让中间人弱引用vc 定时器强引用中间人对象 这样就断开了定时器和vc间的循环 大致代码如下: @i
阅读全文
摘要:get_current_branch()函数通过执行git rev-parse --abbrev-ref HEAD命令获取当前分支的名称,并将其作为字符串返回。pull_current_branch()函数执行git pull命令来拉取当前分支的最新代码。在测试代码中,我们首先获取当前分支名称,然后
阅读全文
摘要:三方提供的sdk只支持arm64的,这样我就没法用模拟器调试了,于是找到三方sdk供应商要到x86_64架构的支持,手动通过lipo的方式将这两个文件合并在一起 1、查看当前文件支持的架构 lipo -info libSPlate.a Non-fat file: libSPlate.a is arc
阅读全文
摘要:小程序自定义弹窗会穿透滑动是会触发页面滚动,在Taro中把给View添加catchMove属性即可 import React, { Component } from 'react' import { AtModal, AtModalHeader, AtModalContent, AtModalAct
阅读全文
摘要:最近有客户反应App点击提交按钮报错的问题,经过分析发现问题是因为时间格式的问题导致的,客户系统iOS15.4以上,系统时间格式设置的是12小时制 如下代码 NSDate *date = [NSDate date]; NSDateFormatter *dateFormatter = [[NSDate
阅读全文