Object-c
leek5533
这个作者很懒,什么都没留下…
展开
-
Command CompileSwiftSources failed with a nonzero exit code
Xcode错误提示:Command CompileSwiftSources failed with a nonzero exit code,网上找了好多才搞定,通过在Build Setting里面自添加一条user-defined(备注:点击Level 边上的 + 号就可以添加),属性为SWIFT_ENABLE_BATCH_MODE,值为NO。再次编译就能发现编译失败的真正原因。apple的出处为URL:Apple Developer Documentation...原创 2021-11-25 17:02:54 · 2259 阅读 · 0 评论 -
Xcode报错:Undefined symbols for architecture arm64
Xcode报错:Undefined symbols for architecture arm64 - 简书错误分析报错原因是:ISJMemberCenterController这个类在ISJUser`模块中找不到。解决办法1、选中有问题的文件2、打开Xcode右侧窗口,发现该文件不在ISJUser的Target Membership中,如下图所示3、勾选ISJUser,在运行项目,运行成功!...原创 2021-11-10 18:47:08 · 3352 阅读 · 0 评论 -
xcode lldb调试
1、po:print object的缩写,表示显示对象的文本描述,如果对象不存在则打印nil2、p:可以用来打印基本数据类型。3、call:执行一段代码call NSLog(@"%@",@"hello world");4、expr:动态执行指定表达式expr i = 3.14 输出:(int)$0 = 3.145、bt:打印当前线程堆栈信息如果要打印所在线程堆栈信息,使用:bt all即可。6、image:常用来寻找栈地址对应代码位置:应用场景(数组越界)模.原创 2021-04-01 13:58:07 · 140 阅读 · 0 评论 -
在OC中,方法分为类方法和实例方法两种
在OC中,方法分为类方法和实例方法两种。前置加号(+)的方法为类方法,这类方法是可以直接用类名来调用的。前置减号(-)的方法为实例方法,必须使用这个类的实例才可以调用它。原创 2021-03-15 15:11:48 · 172 阅读 · 0 评论 -
iOS获取设备的唯一标识的方法
iOS获取设备的唯一标识的方法总结以及最好的方法https://dcsnail.blog.csdn.net/article/details/53068304?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.control&dist_request_id=1328593.11646.16147594426385543&depth_1-utm_source=distribut原创 2021-03-03 17:38:53 · 289 阅读 · 1 评论 -
ios的几个延时方法
1、最简单的,该方法阻塞的是当前线程sleep(5);2、用NSTread,此方法是一种阻塞执行方式,建议放在子线程中执行,否则会卡住界面[NSThread sleepForTimeInterval:5];3、GCD,此方法可以在参数中选择执行的线程,是一种非阻塞执行方式__block ViewController/*主控制器*/ *weakSelf = self;dispatch_time_t delayTime = dispatch_time(DISPATCH_TI..原创 2020-07-29 16:50:34 · 755 阅读 · 0 评论 -
postNotificationName 消息传递
对象之间进行通信最基本的方式就是消息传递,在Cocoa中提供Notification Center机制来完成这一任务。其主要作用就是负责在任意两个对象之间进行通信。使用方法很简单,如下几个步骤即可:假设A与B之间进行通信,B来触发事件,A接受该事件,并作出响应。1) A编写自定义的消息响应函数update2) A向消息中心注册,[NSNotificationCenter defaultCenter] addObserver: self selector:@selector(update) name:原创 2020-07-21 10:54:21 · 1529 阅读 · 0 评论 -
ios启动没有APP的生命周期
1、xcode11 以后AppDelegate.m文件没有了APP的生命周期;在ios13以后用SceneDelegate.m文件AppDelegate.m可以自己加上,如下:#pragma mark - 生命周期- (void)applicationWillEnterForeground:(UIApplication *)application{ NSLog(@"状态** 将要进入前台");}- (void)applicationDidBecomeActive:(UIAp.原创 2020-07-20 17:08:52 · 358 阅读 · 0 评论 -
LeePlayer
1、黑屏:报错:[Application] The app delegate must implement the window property if it wants to use a main storyboard file.@synthesize window = _window;2、原创 2020-07-20 13:52:56 · 85 阅读 · 0 评论 -
APP启动;后台;恢复;
didFinishLaunchingWithOptions 程序首次已经完成启动时执行 applicationWillResignActive 程序将要失去Active状态时调用,比如按下Home键或有电话信息进来 applicationDidEnterBackground 程序已经进入后台时调用 applicationWillEnterForeground 程序从后台回到前台 a...原创 2020-07-16 11:12:51 · 132 阅读 · 0 评论 -
iOS中获取NSError错误信息问题汇总
iOS的NSError错误信息问题汇总一. URL网络框架错误域问题使用AFNetworking 走了fail方法,输出错误信息1. 网络请求中, 错误值作为域NSURLErrorDomain的NSError对象的错误代码属性返回2020-07-08 09:55:10.645450+0800 Player[12591:1607802] Connection 3: received failure notification2020-07-08 09:55:10.6...原创 2020-07-09 09:42:49 · 3295 阅读 · 0 评论 -
实现字符串映射 用NSMutableDictionary (key value)
添加、删除,修改值NSMutableDictionary *propertyDict; NSMutableDictionary *dict = [NSMutableDictionary dictionary];[dict setObject:value forKey:key];//add [propertyDict removeObjectForKey:key] //remove[propertyDict setValue:value forKey:key] //setvalue原创 2020-05-15 15:08:49 · 231 阅读 · 0 评论 -
深拷贝;附strcpy和memcpy区别
深拷贝strcpy() char m_sSubtitleLang[128];const char* destLanguage = [sLanguage UTF8String]; strcpy(m_sSubtitleLang, destLanguage);原创 2020-05-13 00:33:05 · 1509 阅读 · 0 评论 -
c++ 对指针地址的内容进行复制
1、对指针地址的内容进行复制,地址不变,里面内容发生变化;sTempLanguage = &subtitleLang_; 将subtitleLang_地址给sTempLanguage,*sTempLanguage = [],因为*sTempLanguage是指针,指的是subtitleLang_这个地址内容,所以,为直接给subtitleLang_赋值。NSString * __strong *sTempLanguage = NULL;sTempLanguag...原创 2020-05-13 00:23:26 · 3370 阅读 · 0 评论 -
Objc和 c++之间字符串的转换
一、oc和c++的混编;constchar* toNSStringobject c1 --------> c++ ----------> object c2;1.object c1object c1NSString *s =@"ABC";const char* destDir = [s UTF8String];2、C++两种转换方法:...原创 2020-04-13 17:23:23 · 341 阅读 · 0 评论 -
iOS开发:Release/Debug模式与Configuration;图标,APP名称;log打印;
一、release与debug模式Debug和Release仅仅是编译选项的不同,那么为什么要区分Debug和Release版本呢?Debug和Release,主要是针对其面向的目标不同的而进行区分的。Debug通常称为调试版本,通过一系列编译选项的配合,编译的结果通常包含调试信息,而且不做任何优化,为开发人员提供强大的应用程序调试能力。而Release通常称为发布版本,是为...原创 2020-03-09 14:00:07 · 434 阅读 · 0 评论