- 博客(113)
- 收藏
- 关注
原创 Xcode报错:“Set `maskView` to `nil` before adding it as a subview of ZFMaskView
嗯,坑爹的IOS18,当你基于UIView实现的自己的子类中定义一个属性并。因为UIVIEW本身就有这个属性,你又定义一个!触发UIVIEW内部的。
2025-05-14 09:13:13
86
原创 git UserInterfaceState.xcuserstate 文件频繁更新
2> 在终端键入 git rm --cached <YourProjectName>.xcodeproj/project.xcworkspace/xcuserdata/<YourUsername>.xcuserdatad/UserInterfaceState.xcuserstate。3> 提交更新,在终端键入 git commit -m "Removed file that shouldn't be tracked"1> 退出 Xcdoe,打开终端(Terminal),进入到你的项目目录下。
2025-04-16 14:58:55
589
原创 Xcode为不同环境配置不同的环境变量
但此时这个HOST_URL在代码中还不能直接使用,需要去Ohter C Flags中做一个映射配置,在Build Settings搜索“Ohter C Flags”,然后在右侧点击展开,点“+”号对刚才在User-Defined Settings中定义的HOST_URL重新命令一下,以-D新的名称=@\"$(User-Defined Setting中的名称)\"的格式定义好,就能在代码中使用这个新的名称了。二、通过scheme,也就是多configurations。一、通过多Target。
2025-04-09 12:07:04
351
原创 视频监控APP源码
https://download.youkuaiyun.com/download/a12358391/10937612?ops_request_misc=%257B%2522request%255Fid%2522%253A%25226e60b52fa3708bcce2c1160b90b29195%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=6e60b52fa3708bcce2c1160b90b29
2025-03-08 20:44:05
193
原创 Xcode:Publishing changes from within view updates is not allowed, this will cause undefined behavior
Publishing changes from within view updates is not allowed, this will cause undefined behavior
2024-12-05 17:26:32
272
原创 Xcode报错:Undefined symbols,Linker command failed with exit code1
Xcode报错:Undefined symbols,Linker command failed with exit code1
2024-10-11 11:01:24
862
原创 Xcode报错:No exact matches in reference to static method ‘buildExpression‘
Xcode编译报错:Type '()' cannot conform to 'View',No exact matches in reference to static method 'buildExpression'
2024-09-12 18:24:12
848
原创 SwiftUI中ScrollView内部的HStack如何居中显示?
这样就达到了效果,HStack中3个Text水平居中、垂直也居中,那有人可能会问,为什么HStack外层要套个ScrollView,因为我们要做的是多标签横向tab列表,需要能滑动,如果HStack内部的Text很多的时候,要能左右滑动。最后的解决办法是:利用GeometryReader获取屏幕宽度,将HStack的最小宽度调整为父视图的宽度,也就是Scollview的宽度,也就是屏幕的宽度。如果在HStack的最左和最右别添加两个空白空间填充,也达不到效果。
2024-09-12 15:06:37
455
原创 Xcode报错:Return from initializer without initializing all stored properties
我们自定义 init 方法,在 init 中直接赋值 @Binding 会失败,但是直接赋值给Binding类型的变量却正常,说明@Binding并不等同于Binding,使用Binding时要调用wrappedValue,有点麻烦,但是使用@Binding时init初始化方法又报错,怎么解决?),而且参数类型要改成Binding修饰。因此我们在赋值的时候直接赋值给真实的存储变量就可以了。属性包装器默认生成的真实变量名是在名称前加下划线(
2024-09-10 17:13:19
527
原创 class _ContiguousArrayStorage deallocated with non-zero retain count
用队列来做, DispatchQueue,为什么用它?数组的读写操作我们可以看作是一个个事件,这些事件如果放到队列里面,就可以利用队列的同步和异步来达到互斥访问数组的目标,那么问题来了,是使用串行队列还是并行队列呢?串行队列就是指事件按照放入到队列的先后顺序来先后执行,先放进去的事件先执行,后放进去的事件后执行。分析报错原因:Swift中多线程并发读写同一个数组是不安全的,没有进行同步,造成数组的不安全操作,进而引起crash.
2024-09-05 18:35:58
338
原创 framework ‘CoreAudioTypes‘ not found
Xcode15编译报错:framework 'CoreAudioTypes' not found
2024-05-15 10:42:42
3685
原创 Xcode报错:This app needs to be updated by the developer to work on this version of iOS
Simulator device returned an error for the requested operation.This app needs to be updated by the developer to work on this version of iOS. Failed to find matching arch for input file: /Users/hand5/Library/Developer/CoreSimulator/Devices/9C8AD1B6-50BE-4F3
2024-03-27 15:00:47
554
原创 SwiftUI中的@State、@StateObject、@Binding、@ObservedObject、@Environment、@EnvironmentObject等属性包装器的作用和用法
ObservedObject只是作为View的数据依赖,不被View持有,View更新时ObservedObject对象可能会被销毁,适合数据在SwiftUI外部存储,把@ObservedObject包裹的数据作为视图的依赖,比如数据库中存储的数据,当SwiftUI视图“更新”时,实际发生的是创建并显示视图的新示例。当环境变量的值发生变化时,相关的视图会自动更新。示例:在下面的示例中,我们创建一个 UserData 类,使用 @ObservedObject标记属性,在视图中观察和使用该对象的属性。
2023-09-11 17:58:01
2333
1
原创 iOS如何获取设备型号的最新方法总结
通常的做法是,先获取设备的 device model 值,再手动映射为具体的设备型号(或者直接把 device model 值传给后端,让后端去做映射,这样的好处是可以随时兼容新设备)。我们可以先获取 device model 值,记为 internalName ,然后进行对比判断,转换成具体的设备型号。每一种 iOS 设备型号都有对应的一个或多个硬件编码/标识符,称为 device model 或者叫 machine name。
2023-08-29 10:25:15
5121
2
原创 问题:UITableViewCellContentView:height == 44 约束冲突
使用Masonry自动布局,高度自定义,出现如标题所示约束冲突。
2023-08-25 14:29:27
778
原创 iOS极光推送Xcode直接编译运行App能收到极光推送,通过ad-hoc打包ipa安装到手机上收不到推送
2, 通过ad-hoc和AppStore上架这两种方式下载的ipa包安装到手机上,对应的app是生产环境,那这时Java后台APNS这个参数也需要配置为ture,app才能收到推送通知;1,通过Xcode直连编译运行的App肯定是开发环境,这时候不管你是通过手动签名还是自动签名,Java后台APNS这个参数也需要配置为false,app才能收到推送通知;
2023-04-26 17:04:50
560
原创 iOS蓝牙数据解析、大小端转换、位运算
现在我们要截取最左边的0aa6这两个字节(16位),这个数据是UInt16类型,那么首先要做的就是运用上面封装好了的大小端转换方法来截取这两个字节,下面代码中的result就是所需要的数据。* 需求:result的二进制是0000 1010 1010 0110,一个16位的数字,假如与硬件工程师提前说好了,低4位(0110)代表组数,5-8位(1010)代表每组的人数。* 需要注意的是,当仅仅是解析1位数据的时候,就不需要使用像CFSwapInt16BigToHost这样的方法了,具体可以查阅代码。
2023-03-27 11:30:28
2142
原创 常用的RTMP、RTSP、HTTP协议流直播流地址
苹果点播计数器:http://devimages.apple.com.edgekey.net/streaming/examples/bipbop_4x3/gear2/prog_index.m3u8。西瓜播放器:http://sf1-hscdn-tos.pstatp.com/obj/media-fe/xgplayer_doc_video/flv/xgplayer-demo-360p.flv。动画片:https://media.w3.org/2010/05/sintel/trailer.mp4。
2023-03-23 11:27:31
12909
6
原创 RxSwift技术
RxSwift是响应式编程框架,通过异步和数据流来构建事务关系,核心体现就是观察和被观察者https://blog.youkuaiyun.com/qq_14920635/article/details/114981760
2022-05-24 16:30:07
156
原创 iOS自动打包上传至蒲公英
参考文章:fastlane自动打包上传到蒲公英 - 简书打包报错时可以查看log日志:sudo find /private/var -name "*.xcdistributionlogs"
2022-05-17 16:58:12
388
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人