草庐IT

nscopying

全部标签

swift - 无法将表达式的类型 'CGRect' 快速转换为 'NSCopying!'

无法将表达式的类型“CGRect”转换为类型“NSCopying!”swift我正在尝试在swift文件中实现键盘通知。//发送UIKeyboardDidShowNotification时调用。funckeyboardWasShown(aNotification:NSNotification){varinfo=aNotification.userInfovarkRect:CGRect=info[UIKeyboardFrameBeginUserInfoKey]asCGRectvarkbSize:CGSize=kRect.size但不确定为什么会出现此错误? 最

swift - NSCopying 副本(带有 :) - Does it really need to return Any?

有没有什么方法可以使用NSCopying而返回的对象不是Any类型?它总是迫使我施法。这似乎很奇怪。我正在复制对象,Swift难道不应该根据copy这个词的定义知道它是同一类型吗?是否有另一种方法来复制我不知道的对象,或者是否有一些我缺少的“陷阱”需要这个。这个类很简单,比如:classPerson{varname:Stringvarage:Int}它必须是一个类,因为我需要继承。例子:varjohn=Person(name:"John",age:30)varjohnsClone=john.copy()as!Person我想我可以创建一个接受现有对象的初始化程序,但这在语义上似乎不如“

ios - 从 NSDictionary 获取对象时类型 'String' 不符合协议(protocol) 'NSCopying' 错误

在Swift中尝试从NSDictionary中提取对象时出现错误:Type'String'doesnotconformtoprotocol'NSCopying'我尝试将key从String转换为NSString但我没有解决问题。任何人都可以阐明一下吗?这是代码:varexcerciseCategoryDictionary=objectasNSDictionaryletcategory=NSEntityDescription.insertNewObjectForEntityForName(NSStringFromClass(ExcerciseCategory.self),inManage

swift - 如何在 Swift 2 中遵循 NSCopying 并实现 copyWithZone?

我想在Swift2中实现一个简单的GKGameModel。Apple的示例是用Objective-C表示的,并包含此方法声明(根据协议(protocol)NSCopying的要求)GKGameModel继承:-(id)copyWithZone:(NSZone*)zone{AAPLBoard*copy=[[[selfclass]allocWithZone:zone]init];[copysetGameModel:self];returncopy;}这如何转化为Swift2?就效率和忽略区域而言,以下是否合适?funccopyWithZone(zone:NSZone)->AnyObject

iphone - 实现 NSCopying

我已阅读NSCopying文档,但我仍然不确定如何实现所需的内容。我的类(class)供应商:@interfaceVendor:NSObject{NSString*vendorID;NSMutableArray*availableCars;BOOLatAirport;}@property(nonatomic,copy)NSString*vendorID;@property(nonatomic,retain)NSMutableArray*availableCars;@property(nonatomic,assign)BOOLatAirport;-(id)initFromVehVendo

iphone - 实现 NSCopying

我已阅读NSCopying文档,但我仍然不确定如何实现所需的内容。我的类(class)供应商:@interfaceVendor:NSObject{NSString*vendorID;NSMutableArray*availableCars;BOOLatAirport;}@property(nonatomic,copy)NSString*vendorID;@property(nonatomic,retain)NSMutableArray*availableCars;@property(nonatomic,assign)BOOLatAirport;-(id)initFromVehVendo
12