草庐IT

fno-objc-arc

全部标签

iOS关联对象objc_setAssociatedObject探讨

主要函数为:```//为给定的对象设置一个关联值publicfuncobjc_setAssociatedObject(_object:Any,_key:UnsafeRawPointer,_value:Any?,_policy:objc_AssociationPolicy)//返回与给定键的给定对象关联的值publicfuncobjc_getAssociatedObject(_object:Any,_key:UnsafeRawPointer)->Any?//移除给定对象的所有关联publicfuncobjc_removeAssociatedObjects(_object:Any)```objc_

ios - 我可以将适用于 iOS 的 GoogleMaps SDK 链接到除 -ObjC 之外的链接器标志吗

我正在使用GoogleMapsSDK和Parse的框架。如果我一起使用它们,Parse中的错误会触发所需的facebookkey,因为链接器标志-ObjC。这是Parse论坛和此处除GoogleMaps之外的其他框架的一个有据可查的问题,一般解决方案是导入FacebookSDK。我对以任何方式使用facebook都不感兴趣,并且我不想将它添加到我的项目中,因此,如果有其他方法可以调用链接器标志,我将不胜感激。有些答案说的是-force_load而不是-ObjC,但它需要一些我不确定如何获取的额外信息。一句话:请提供将与GoogleMapsSDK一起使用的确切-force_load以避免

iphone - ARC 不允许将 Objective-C 指针隐式转换为 'void *' - sqlite3

当我尝试使用ARC和以下SQLite代码执行此操作时出现该错误:NSMutableArray*rows=[[NSMutableArrayalloc]init];sqlite3_exec(database,"selectdistinctcategoryfrombilly",callback,rows,NULL);有人知道如何解决这个问题吗? 最佳答案 请注意,我从不使用ARC,但如果我正确理解文档,将行参数转换为(__bridge_retainedvoid*)应该会有所帮助。这是我用来测试的代码。staticintmyCallback

ios - 将 Redis 库编译到 iOS 项目 ("_OBJC_CLASS_$_ObjCHiredis"时出错,引用自 :)

我正在尝试集成Redis的模拟器静态库|进入我的iOS项目并完成了以下操作。将静态库拖放到我的项目文件夹中在build设置中添加标题搜索路径检查静态库是否添加到设置中的buildphases。设置标题搜索路径将其他链接器标志设置为“-all_load”我不确定哪里出了问题,但在编译时出现以下错误。非常感谢这方面的任何帮助。 最佳答案 我也遇到了这样的错误,并发现在目标的“构建阶段”->“编译源”中添加.m文件解决了我的问题。实际上,如果我们在添加任何新库时没有勾选“添加到目标”名称中的目标名称,就会发生这种情况。(对于您的情况,拖放

ios - 找不到符号 : _objc_retainAutoreleasedReturnValue running ARC compiled code on iOS 4. 3

我的代码是使用5.1的基础SDK和4.0的部署构建的,并且是使用ARC构建的。我以前在4.3测试设备上运行它时没有遇到任何问题,但它只是第一次崩溃。知道如何解决吗?ExceptionType:EXC_BREAKPOINT(SIGTRAP)ExceptionCodes:0x00000001,0xe7ffdefeCrashedThread:0DyldErrorMessage:Symbolnotfound:_objc_retainAutoreleasedReturnValueReferencedfrom:/var/mobile/Applications/6AD37C1A-9642-4F0A-

ios - ARC 中过度保留的调试策略?

我有一些对象被传递到我的应用程序中很多不同的View和Controller。他们没有在我期望的时候被释放。显然某处有一个错误的强指针,但它可能所在的表面积非常大——这些对象被移入和移出许多不同的数据结构。我在这里常用的解决方案是泄漏(报告没有循环)和分配(列出了该对象的500多个保留/释放)。有什么办法可以减少我在这里的搜索空间吗?理想情况下有一个工具可以让我输入一个指针并查看对该对象的所有强引用,而且我可能可以在大约60秒内查看列表并找到额外的引用.事实上,有这样一个工具——ObjectGraphinstrument——但它不适用于iOS软件。 最佳答案

ios - 如何仅使用一个单元格在一个 View 上设置 UITableView 单元格宽度不同于在 objc 中选择段按钮

我有一个段Controller的View,我使用了两个选择。所以在这里我只想在第一次选择时增加包含带有地址的标签的单元格的宽度,而不是通过第二次选择减少宽度,在这里我使用了一个单元格并在其中使用了自动调整大小。里面附有意见请看Viewonselectionofsecondsegmentindex2Viewsonselectionofsecondsegmentindex1 最佳答案 我的理解是在没有价格显示的情况下,你希望地址填满价格所占的空间,这里我建议:使用约束您可以为地址标签和价格标签之间的空间设置限制。然后是价格标签和尾随ma

ios - 如何为 Arc 做角

我做了如下的弧线。通过指定半径、起始角、结束角CGContextAddArc(ctx,self.frame.size.width/2,self.frame.size.height/2,self.radius,2*M_PI,3*M_PI/2-ToRad(angle),0);现在我想让拱形的角变圆。所以需要在两端画圆圈。因为我使用的是框架尺寸,所以给常量是行不通的。 最佳答案 尝试将图形状态参数CGContextSetLineJoin设置为圆形:CGContextSetLineCap(ctx,kCGLineCapRound);这是我根据

ios - 我是否必须在 ARC 下调用 dispatch_release?

(但这个问题完全不同)此非ARC代码示例设置了一个基于GCD的计时器,并为dispatch_source_t对象调用了dispatch_release:__blockBOOLdone=NO;dispatch_source_ttimer=dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER,0,0,dispatch_get_main_queue());if(timer){uint64_tmilliseconds=100ull;uint64_tinterval=milliseconds*NSEC_PER_MSEC;uint64_tleeway=

ios - 如何在 ObjC 中成功检查 pin 时弹出 AlertView?

我正在尝试创建一个小应用程序,用户需要在其中输入正确的pin上的pin,它会说correctpinelsewrong但我不确定下面的逻辑是否正确。我在最新的Mac版本上使用Xcode10。-(IBAction)validatePin:(id)sender{[ViewControllercheckPin:self.textPin.text.integerValue];}+(BOOL)checkPin:(NSInteger)pin{if(pin==1408){//[UIAlertControlleralertControllerWithTitle:@"Pin"message:@"Succe