- 博客(232)
- 资源 (1)
- 收藏
- 关注
原创 Xcode快捷键
Control+K删除光标后的所有内容(光标所在的行),该行内容为空时,再次执行该快捷键,会删除此空行,全局折叠(折叠当前文件下的全部函数):Shift+Command+Option+Left/Right。折叠注释块:(/ /之间的文字) : Ctrl+Shift+Command+Left/Right。局部折叠(折叠一个函数) :Command+Option+Left/Right。Command+Delete删除该行光标前的所有内容(光标所在的行)折叠 Option+Command+左箭头。
2024-07-04 15:07:57
378
原创 iOS封装FrameWork
我们是整个项目封装给客户app用,项目里面有资源文件:xib和图片文件。有第三方,也有.a文件和第三方给我们的frameWork。下面记录下大体遇到的问题及遇到的冲突解决办法。2.新建Framework工程,.创建sdk项目 Xcode -> File -> New Project -> Framework。如下图(适配所有版本的模拟器和真机)File->New->Target->Other->Aggregate。1.首先准备好,要封装的功能模块。默认在project(不可见,私有)。
2024-06-21 10:44:05
490
原创 swift的lazy关键字 后面还会补充
在Swift 中,如果你在子类的构造器中遇到了“Property 'self.someProperty' not initialized at super.init call”的错误,这表示在调用父类的。这个闭包将在属性第一次被访问时执行,而不是在类的实例化过程中。是处理复杂类初始化过程中遇到的初始化顺序问题的一种有效方式,特别是当某些属性的初始化依赖于复杂计算或条件时。对于那些在构造器中不能立即初始化的属性,或其值依赖于某些条件或其他属性的值,你可以使用。调用之前所有属性都需要初始化的要求,因为。
2024-03-05 15:05:38
920
1
原创 【swift】struct与class 的区别
swift与oc混合开发时,oc调用swift需要继承NSObject,这就导致了class可以继承,所以可以调用class,但struct不能继承,所以不能调用struct。引用类型变量存储的是对数据的引用地址,后者称为对象,赋值时,是将对象的引用地址复制过去,也叫浅拷贝,因此若多个变量指向同一个对象时,操作会相互影响。值类型变量直接包含数据,赋值时也是值拷贝,或者叫深拷贝,所以多个变量的操作不会相互影响。拷贝时,struct是深拷贝,拷贝的是内容,class则需要选用正确的深浅拷贝类型。
2024-03-05 10:20:15
1117
原创 Xcode15在iOS12系统上崩溃的原因
1.1.崩溃在_dyld_start,如图:崩溃截图解决办法:在other link flags添加-ld64注意:该办法只能解决运行真机,archive出来的包依然报错闪退......1.2 SwiftUI导致iOS12及以下系统闪退问题。如果使用了SwiftUI,那么不进行特别处理的话,在iOS12上会崩溃,哪怕你使用了#available进行处理。因为。而且默认导入的framework都是类型。
2024-01-05 13:39:14
2775
原创 (一)OC对象本质---内存布局
分配完以后,还有一个指针*,利用这个指针要指向这个对象,就要把对象的内存地址赋值给这个指针。但NSObject对象内部只使用了8个字节的空间(64bit环境下,可以通过class_getInstanceSize函数获得)1)OC中的对象、类主要是基于C\C++的结构体来实现的.C\C++的结构体支撑了我们的面向对象。传递24个字节给calloc,内存对齐后 分配的内存快大小是--->NANO_MAX_SIZE。操作系统内存对齐:苹果操作系统给分配内存的时候,也存在内存对齐的概念。
2023-06-19 15:40:54
448
原创 iOS 系统,强退、关闭程序,applicationWillTerminate为调用问题解决
iOS 系统,强退、关闭程序,applicationWillTerminate为调用问题解决
2023-01-06 15:45:42
1327
原创 iOS15 新特性兼容适配
1.用xcode13编译工程后,导航栏的问题比较明显,原因是UINavigationBar部分属性的设置在iOS15上是无效的。 if (@available(iOS 15.0, *)) { UINavigationBarAppearance *bar = [UINavigationBarAppearance new]; [bar setBackgroundColor:RPBackGroundColor]; [bar setBackgroundImag
2022-05-09 12:08:24
1108
原创 iOS14.5 +Xcode12.5 UDP广播无法发送问题解决办法
WiFi设备无法配网,需要申请权限问题。1、需要登录开发者账号在这个地址申请权限:https://developer.apple.com/contact/request/networking-multicastIt is used to obtain IP addresses and port numbers have been negotiated.App sends ssiD,password, network configuration token and other inform.
2022-04-13 14:36:20
4874
2
原创 iOS Workspace 项目管理 (二)
5、工程中引用 Static Library库 在 TestLib.h 文件中写一个类方法:正在上传…重新上传取消 在 TestApp_1 工程中引用TestLib.h 中的方法:正在上传…重新上传取消 我们会发现找不到静态库中的头文件,其实也可以想到,因为我们并未将其进行关联。 所以在TestApp_1工程中引入TestLib静态库:正在上传…重新上传取消正在上传…重新上传取消...
2022-04-07 15:36:33
400
原创 iOS Workspace 项目管理 (一)
1、创建Workspace工作空间 将创建的工作空间命名为“xxxx”, 然后将xxxx.xcworkspace保存到项目根目录文件夹(此处新建项目更目录为WorkspaceDemo) 2、创建多个工程project (1)创建一个工程项目 TestApp_1 将工程TestApp_1 添加到上一步创建的workspace中: 同上再创建一个新工...
2022-04-07 11:18:27
706
原创 ios 返回到指定界面及侧滑问题
需求:A推出B,B推出C,C返回的时候跳过B。网上有很多返回指定界面的文章,大多都是在C界面重新定义self.navigationItem.leftBarButtonItem在pop出栈返回时遍历self.navigationController.viewControllers的子控制器,然后判断是否为A界面,跳转返回A。这样可以实现点击返回到指定界面,但是会禁掉侧滑手势。放开手势侧滑会显示B界面。要实现侧滑同样跳过B界面,那么需要在push入栈时就将B界面移除。-(void)pushVie
2022-03-24 11:57:51
934
原创 iOS 多语言词条批量导出--含工具
如何辨别项目中的中文字符串?既然要替换项目中使用到的中文字符串,那么前提就必须要先找到这些个字符串,然后将这些字符串,替换成我们定义的宏, 为了替换方便,可将这些字符串自身作为key, 这里不理解的不要紧,下面我还会讲到。 既然是辨别中文字符串,那也就是说在项目文件中进行匹配查找,说到匹配,那就需要正则表达式了,用正则表达式匹配Xcode中的使用的中文字符串,使用(@"[^"]*[\u4E00-\u9FA5]+[^"\n]*?")\s*, 打开你的Xcode 试试看,切记find 后面的选项要选择Re.
2021-11-30 12:24:18
2116
原创 如何查看iOS App pre_main阶段(即Main函数之前)的启动时间
App的启动时间可以按2个大块进行划分,【T1 main函数之前】和【T2 main函数到Root ViewController的出现】。这里介绍的是【T1 main函数之前】阶段的耗时怎么在Xcode里面查看。App的启动时间可以按2个大块进行划分0x0:修改Edit Scheme修改Edit Scheme0x1:修改DYLD_PRINT_STATISTICS值为${DEBUG_ACTIVITY_MODE}或者填1也可以修改DYLD_PRINT_STATISTICS值为1.
2021-09-10 13:38:08
1140
原创 Xcode Add Editor On Right不能用了
xib忽然无法连线了,xib和storyboard连线用 Assistant凑合了一下,今天看了看StackOverflow,有答案了Control + Shift + Command + Enter
2021-03-10 13:50:39
507
原创 AFN请求头
AFN不管是GET、POST、PUT、DELETE请求,最终都会调用此方法 ,建立一个任务。AFHTTPSessionManager.m- (NSURLSessionDataTask *)dataTaskWithHTTPMethod:(NSString *)method URLString:(NSString *)URLString parame...
2020-05-27 11:44:41
517
原创 更新cocoapods ---关于cocoapods的一些小记 git小记
一直在忙小程序,刚发现更新不了cocoapods,终端输入cocoapods:sudo gem update cocoapods但是遇到如下问题:ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError) bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)什么?是404 浏览器打开https://gems.ruby-.
2020-05-14 23:19:19
625
原创 iOS面试题(三十)架构/框架
11.架构/框架图片缓存框架 时长统计框架 复杂页面架构设计 客户端整体架构2.1 图片读写图片通过什么方式进行读写,过程怎样的?以图片URL的单向Hash值作为Key...
2020-04-02 08:58:10
1037
原创 iOS面试题(二十九)设计模式
10.设计模式六大设计原则(设计模式所遵从的六大设计原则) 责任链 桥接 适配器 单例 命令六大设计原则(设计模式所遵从的六大设计原则)设计原则单一职责原则:通俗地讲就是一个类只做一件事 CALayer:动画和视图的显示。 UIView:只负责事件传递、事件响应。 开闭原则:对修改关闭,对扩展开放。 要考虑到后续的扩展性,而不是在原有的基础上来回修改...
2020-04-01 18:55:03
1348
原创 iOS面试题(二十九)网络---TCP/UDP&DNS解析&Session/Cookie
9.网络HTTP协议(什么是HTTP,HTTP当中的get和post有什么区别) HTTPS与网络安全(HTTPS连接建立流程是什么,它与安全又有怎么的关系呢) TCP/UDP(TCP连接建立的三次握手,四次挥手以及UDP和长链接之间都有怎样的关系和含义呢) DNS解析 Session/Cookie传输层中的TCP和UDPTCP: 传输控制协议UDP: 用户数据报协议...
2020-04-01 17:43:56
973
原创 iOS面试题(二十八)网络---HTTPS与网络安全
9.网络HTTP协议(什么是HTTP,HTTP当中的get和post有什么区别) HTTPS与网络安全(HTTPS连接建立流程是什么,它与安全又有怎么的关系呢) TCP/UDP(TCP连接建立的三次握手,四次挥手以及UDP和长链接之间都有怎样的关系和含义呢) DNS解析 Session/CookieHTTPS与网络安全2016年年底,苹果公司向开发者提出要求:全面适配http...
2020-04-01 15:51:09
971
原创 iOS面试题(二十七)网络---HTTP协议
9.网络HTTP协议(什么是HTTP,HTTP当中的get和post有什么区别) HTTPS与网络安全(HTTPS连接建立流程是什么,它与安全又有怎么的关系呢) TCP/UDP(TCP连接建立的三次握手,四次挥手以及UDP和长链接之间都有怎样的关系和含义呢) DNS解析 Session/CookieHTTP: 超文本传输协议(HyperText Transfer Protocol...
2020-04-01 15:25:19
908
原创 iOS面试题(二十六)RunLoop
8.RunLoop什么是RunLoop?(RunLoop的实现机制?剖析RunLoop的源码) 数据结构 (Mode/Source/Timer/Observer ) 事件循环机制(RunLoop有事做事,没事休息是由事件循环机制来维护的) RunLoop与NSTimer之间的关系是怎样的?(我们在使用NSTimer的时候,应该怎样考虑和RunLoop的关系,包括RunLoop所带来...
2020-04-01 14:22:53
1416
原创 iOS面试题(二十五)多线程 --NSOperation和NSOperationQueue&NSThread&锁机制
7.多线程GCD(使用最多) NSOperation/NSOperationQueue(AFNetworking源码中所有网络请求任务都封装到NSOperation,提交到operationQueue中,SDWebImage也会涉及) NSThread(实现常驻线程) 线程同步、资源共享(在我们实际运用多线程运用技术过程中,所产生或者引发的线程同步、资源共享问题) 互斥锁、自旋锁、...
2020-03-30 18:25:10
1161
原创 iOS面试题(二十四)多线程 -- GCD
7.多线程GCD(使用最多) NSOperation/NSOperationQueue(AFNetworking源码中所有网络请求任务都封装到NSOperation,提交到operationQueue中,SDWebImage也会涉及) NSThread(实现常驻线程) 线程同步、资源共享(在我们实际运用多线程运用技术过程中,所产生或者引发的线程同步、资源共享问题) 互斥锁、自旋锁、...
2020-03-30 13:41:12
1457
原创 iOS面试题(二十三)Block--Block的本质&截获变量特性&__block修饰
6.BlockBlock的本质(什么是Block,你对Block的调用又是怎样理解的) 截获变量特性(系统关于Block的截获变量特性又是怎样实现的呢) __block修饰符的本质(在什么情况下使用) Block的内存管理(说明时候需要对一个Block进行copy操作?栈Block和堆Block你又是否了解呢?) 循环引用(Block在使用不当的时候,经常会产生的循环引用)Block...
2020-03-30 10:15:22
1371
原创 iOS面试题(二十二)内存管理-循环引用
5.内存管理内存布局 内存管理方案(更好的简述内存管理方案相关的问题,就要明白他们的数据结构) 数据结构 ARC&MRC(什么是ARC,什么是MRC,他们的区别以及各自实现的机制、原理) 引用计数机制(什么是引用计数机制?内存是怎样管理的?) 弱引用表(我们声明weak的一个变量,为什么在内存释放的时候,weak指针会自动置为nil?弱引用变量内存是怎么管理的?) 自动...
2020-03-25 13:34:29
709
原创 iOS面试题(二十一)内存管理--自动释放池(AutoReleasePool)
5.内存管理内存布局 内存管理方案(更好的简述内存管理方案相关的问题,就要明白他们的数据结构) 数据结构 ARC&MRC(什么是ARC,什么是MRC,他们的区别以及各自实现的机制、原理) 引用计数机制(什么是引用计数机制?内存是怎样管理的?) 弱引用表(我们声明weak的一个变量,为什么在内存释放的时候,weak指针会自动置为nil?弱引用变量内存是怎么管理的?) 自动...
2020-03-25 12:41:31
1760
原创 iOS面试题(二十)内存管理--弱引用表
5.内存管理内存布局 内存管理方案(更好的简述内存管理方案相关的问题,就要明白他们的数据结构) 数据结构 ARC&MRC(什么是ARC,什么是MRC,他们的区别以及各自实现的机制、原理) 引用计数机制(什么是引用计数机制?内存是怎样管理的?) 弱引用表(我们声明weak的一个变量,为什么在内存释放的时候,weak指针会自动置为nil?弱引用变量内存是怎么管理的...
2020-03-24 12:51:15
1150
libarclite文件
2024-05-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人