草庐IT

objc_unretainedPointer

全部标签

ios - ObjC 到 NSDictionary 到 NSObject 的 Swift 转换 : AnyObject

我正在使用Swift实现Segment.com的iOS库,并且一切正常,只是停留在identify方法下面的代码转换上:引用:https://segment.com/docs/libraries/ios/#identify[[SEGAnalyticssharedAnalytics]identify:@"userId"traits:@{@"email":@"em@il.com"}];其中traits是一个NSDictionary*,可选Xcode告诉我(预输入提示)在Swift中它转换为:SEGAnalytics.sharedAnalytics().identify(userId:Str

ios - StringWithFormat "%.2ld"objc 到 swift

我在一个swift项目中有一个“pickerView”对象。我理解Objective-c中的代码,但我不确定如何在Swift中实现它。Objc方法-(NSInteger)pickerView:(UIPickerView*)pickerViewnumberOfRowsInComponent:(NSInteger)component{switch(component){case0://Weekreturn7;case1://Hourreturn24;default://Minutesreturn60;//or7;(10by10)//or13;(5by5)}}我只是不确定如何为titleFo

ios - 错误 : Execution was interrupted, 原因:内部 ObjC 异常断点 (-5)

我正在尝试显示带有自定义UICollectionViewCell的UICollectionView,应用程序崩溃并且出现以下错误:2018-07-2109:14:10.498749+0300Shippers[18104:819840]***Assertionfailurein-[NSISEngine_optimizeWithoutRebuilding],/BuildRoot/Library/Caches/com.apple.xbs/Sources/Foundation_Sim/Foundation-1452.23/Foundation/Layout.subproj/Incrementa

swift - @objc'只能应用于类的扩展,从swift调用扩展方法到objective c

我正在创建类似的字符串扩展@objcextensionString{staticfuncclassName(_aClass:AnyClass)->String{returnNSStringFromClass(aClass).components(separatedBy:".").last!}funclocalize()->String{returnNSLocalizedString(self,comment:"")}}我正在像swift一样快速使用它btnReferencePhoto.setTitle("ADDREFERENCEPHOTO".localize(),for:.normal

objective-c - 如何从 lldb 中的 objc 访问快速便利变量?

我正在尝试在swift上下文中设置一些方便的变量并从ObjC上下文访问它。​​(lldb)expression-lswift--var$answerSwift=42(lldb)expression-o-lswift--$answerSwift42(lldb)expression-o-lobjc--$answerSwifterror:useofundeclaredidentifier'$answerSwift'反之亦然:(lldb)expression-lobjc--int$answerObjc=42(lldb)expression-o-lswift--$answerObjc42如何将值

xcode - Swift Compiler 正在尝试编译 ObjC

从昨晚开始我就一直在研究Swift,我遇到了一些奇怪的事情。我在我的Swift项目中包含了一些ObjC类——使用桥接头。但是,当我尝试构建该项目时,Swift编译器会报错,因为从表面上看,它正在尝试编译ObjC代码。我在这里缺少一个步骤吗?有没有其他人遇到过这个问题并找到了解决方案?我已经搜索了文档,但无济于事。 最佳答案 事实证明这是我的一个愚蠢的疏忽。许多第三方ObjC库/代码不包括Foundation——假设它已经存在。当然,在Swift中,情况并非如此。一旦我添加了#import到我导入的header,一切都很好。

没有objc的协议(protocol)中的Swift可选方法

我知道,在Swift协议(protocol)中制作一些方法需要使用@objc协议(protocol)。问题是,我不能使用objectivec方式,因为我在协议(protocol)中有一个方法,它返回一个Swift结构。所以我得到了错误,我不能使用@objc协议(protocol),因为我的方法返回一个结果,它不能在objective-c中表示。不幸的是,我绝对想使用可选的方法,因为有两种方法,它们是可选的,我的类的用户应该选择他想使用的方式。 最佳答案 在这种情况下,我所做的是返回一个包装Swift结构的类(与Objective-C

ios - 如何使用 getData() 在 Swift 中使用 ObjC PNChart 库绘制折线图?

我是一名新手程序员,最近开始学习Swift。我正在Swift中制作一个项目,我的目的是在引入参数的同一View中绘制用户引入的信号函数(使用由类PNLineChart控制的subview)。事实上,我使用CocoaPods安装了PNChart库,使用了ObjectiveCheader的桥接header。问题是在ObjC中使用类和方法的方式是将它们“翻译”成Swift语法。我发现PNChart有作者制作的Swift实现,但Pods不可用(如果有人知道如何将它们放入我的项目中,这也会有所帮助)。好吧,作者在其wiki中给出的绘制数组图的ObjC代码如下:#import"PNChart.h"

ios - 将 ObjC 转换为 Swift - UnsafePointer<Void> 不可转换为结构类型

我正在学习用objective-c编写的教程here并且我已经将大部分内容转换为swift,但是有些行就是行不通。例如,我转换了以下结构:typedefstruct{MessageTypemessageType;}Message;typedefstruct{Messagemessage;}MessageMove;为此:structMessage{varmessageType:MessageType}structMessageMove{varmessage:Message}在另一行中,本教程执行以下操作:-(void)match:(GKMatch*)matchdidReceiveData

objective-c - 如何在 Swift 中将 Objc-C NSUInteger[] = {0,1,2} 表示为 UnsafeMutablePointer<UInt>?

Objc-Cheader定义:-(int)printPDFAtPath:(NSString*)pdfPathpages:(NSUInteger[])indexeslength:(NSUInteger)lengthcopy:(int)nCopy;使用此函数的示例objc-C代码:NSUIntegerpageIndexes[]={0};printResult=[self.ptpprintPDFAtPath:selectedPDFFilePathpages:pageIndexeslength:lengthcopy:self.numberOfPaper];swift期望:funcprintPD