草庐IT

display_name

全部标签

swift - swift 课前@objc 和课上@objc(class_name) 的区别?

有什么区别:@objcclassMyClass:NSObject{}和@objc(MyClass)classMyClass:NSObject{} 最佳答案 @objc修饰符在Swift2中被弃用。所有标记为@objc的类都必须是NSObject的子类,从而使修饰符@objc变得多余。但是,@objc(xxx)用于定义类的替代名称(供运行时和Objective-C代码使用)。此修饰符仅在您希望在运行时/ObjectiveC代码中使用不同的名称时才有用。默认情况下,运行时名称与声明的名称相同,以模块名称和点作为前缀。例如,classX:

objective-c - iOS 8 方向改变 : Keyboard frame does not display correctly

这只是一个iOS8问题,键盘在iOS7中正确显示,设备方向发生变化。我的应用程序支持纵向和横向并使用自动布局。如果我将包含UITextField子类的UIViewController子类推送到导航堆栈上,并且UITextField成为纵向的第一响应者,则默认键盘会正确显示。但是,如果我将设备旋转到横向,则UIViewControllersubview布局会正确显示,但键盘会显示在屏幕的顶部中央。键盘的方向对于横向方向是正确的,但它的框架宽度与纵向方向的预期宽度相同。如果我将应用程序方向设置为仅横向,则键盘无法正确显示。这只是iOS8方向更改的问题。 最佳答案

ios - 错误: CoreData: warning: Unable to load class named '' for entity 'Receipt' . 但是类被删除了

我已经为我的实体创建了一个NSManagedObject的子类,但是在我删除它之后因为我不使用它,我只在我的xcdatamodeld文件中指定了实体。当我使用这个实体时,我现在在我的控制台中收到这条消息:CoreData:警告:无法为实体“Receipt”加载名为“”的类。找不到类,而是使用默认的NSManagedObject。!我怎样才能完全删除这个类,以便CoreData不再为我的实体研究一个类? 最佳答案 您很可能仍然让您的模型尝试访问该类。进入您的XCDataModel并确保所有实体的“类名”都设置为NSManagedObj

linux下xhost命令报错:unable to open display的解决办法

linux下执行xhost命令报错:unabletoopendisplay,解决方法,linux下通过xhost进入图形界面,经常会出现报错“unabletoopendisplay”linux下的操作步骤如下:1.复制代码:代码如下:[root@localhost~]#vncserverNew'localhost:1(root)'desktopislocalhost:1Startingapplicationsspecifiedin/root/.vnc/xstartupLogfileis/root/.vnc/localhost:1.log[root@localhost~]#exportDISPL

ios - 核心数据 : No NSValueTransformer with class name XXX was found for attribute YYYY on entity ZZZZ

我在xcdatamodel文件中设置了我的CoreData模型。我的属性YYYY有一个可转换的类型,我在数据模型检查器中设置了转换器名称。在我的案例中,我在我的模型中存储了一个[CLLocation]。classLocationArrayTransformer:NSValueTransformer{overridefunctransformedValue(value:AnyObject?)->AnyObject?{letlocations=valueas![CLLocation]returnNSKeyedArchiver.archivedDataWithRootObject(locat

ios - Xcode 7.3 : import Module displayed with strikethrough

将Xcode升级到7.3后,我发现有些模块在导入时被删除,如下图所示:但是在添加模块之后(所以只需按enter)一切都很好。这意味着什么?这里的模块是用Swift编写的,可以正常工作。 最佳答案 这是一个错误。我们已在218010af中修复它,它应该包含在Swift2.2.1版本中,并且包含在2016-04-12-adevelopersnapshot中. 关于ios-Xcode7.3:importModuledisplayedwithstrikethrough,我们在StackOverf

swift 4 : CUICatalog: Invalid asset name supplied: '(null)' when using AVPlayerViewController Only

我正在尝试播放本地视频文件并不断收到以下日志:[框架]CUICatalog:提供的Assets名称无效:'(null)'我的视频文件在项目目录中,也在主包资源中。我已经尝试了多个版本的语法来播放视频。这是我现在在测试项目中的代码:@IBActionfuncbuttonAction(_sender:Any){ifletpath=Bundle.main.path(forResource:"slipMovement",ofType:"mp4"){letvideo=AVPlayer(url:URL(fileURLWithPath:path))letvideoPlayer=AVPlayerVie

“/usr/bin/python3: No module named pip“的解决

在树莓派内安装了宝塔,以为宝塔安装的时候也已经把python3完整安装了,不料运行sudopython-mpipinstall--upgradepipsetuptoolswheel时称找不到pip模块……网上有“打开终端,输入:python-mensurepip”的方法,实测会报错“找不到ensurepip模块”。直接重新安装pip:sudoapt-getremovepython-pippython3-pipsudoapt-getinstallpython-pippython3-pip系统会自动找到有关依赖安装。之后就正常了。

swift - 传给#keyPath()的非字符串 "property name"能否独立保存?

我很高兴发现Swift3对#keyPath()的实现,这将消除拼写错误并在编译时强制执行key路径确实存在。比手动输入字符串要好得多。https://github.com/apple/swift-evolution/blob/master/proposals/0062-objc-keypaths.mdclassMyObject{@objcvarmyString:String="default"}//WorksgreatletkeyPathString=#keyPath(MyObject.myString)Swiftdocslistthetype作为“属性名称”传递给#keyPath()

swift - git log -L :<funcname>:<file> 的 "the function name regex"是什么

我的文件中有以下Swift函数Main/VProj/AppModel.swiftfunccreateItemAndSegment(image:UIImage,completionHandler:(Item?,NSError?)->Void){\\[...]}gitlog-L::的文档州-L,:-L::Tracetheevolutionofthelinerangegivenby","(orthefunctionnameregex)withinthe.但是命令gitlog-L:createItemAndSegment:Main/VProj/AppModel.swiftgitlog-L:'c