草庐IT

METHOD_NAME

全部标签

objective-c - Objective-C 有对应的 CF_SWIFT_NAME() 吗?

有没有办法固定在Swift中为Objective-C实现的方法的名称?一个Swift方法staticfuncconvert(foo:Foo)->Bar在Objective-C中变为+(Bar*)convertWithFoo:(Foo*)foo;当一个想要的名字是+(Bar*)convertFoo:(Foo*)foo;//without`With`从Objective-C到Swift,我会使用CF_SWIFT_NAME()或NS_SWIFT_NAME()宏。 最佳答案 是的,您可以使用@objc属性实现:@objc(convertFo

ios - EAAccessory.Name 与配对的设备名称不匹配

我有一个iOS应用程序。我可以成功连接到配对的EAAccessory(蓝牙经典)。我能够从通过EAAccessory对象公开的设备中提取信息。我注意到的一件事是配对设备的名称(在我的设置->蓝牙->我的设备列表中)与我的EAAccessory对象公开的设备名称不匹配。我觉得这很奇怪。有什么方法可以通过我的iOS应用获取设备的实际名称(来自“设置”页面的名称)? 最佳答案 你没有提到这是蓝牙经典还是BLE?,我下面的回答是蓝牙经典,我记得我以前见过类似的东西,这是我目前的发现:看看AccessoryDesignGuidelines,特

ios - 如何使用 Swift 获取用户 "Name"?

我正在尝试创建一个应用程序,当用户打开第一个View时,它会提供一个友好的问候语。例如,根据一天中的不同时间,它会说“早安/下午/晚安-用户名”。如何获取用户在其iPhone上的姓名?我需要Settings>General>About_NAME上的名称? 最佳答案 UIDevice.current.name返回设备名称,因此您应该解析字符串以尝试区分设备类型(iPhone、iPad等...)和名称。但这有点棘手:假设您有“我的iPhone”、“Mary的iPhone”或“John的iPhone”或类似的东西。Soem人尝试使用正则表

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

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

ios - 如何桥接 Objective-C initWithError : method into Swift

我有一个在Objective-C中定义的类,其初始化程序是-initWithError:(由于依赖外部资源,初始化程序可能会失败)。我希望它在init()throws时桥接到Swift。继承自NSObject的常规初始化程序-init可以标记为不可用,因为我不想使用它。在Objective-C中,我有:@interfaceFoo:NSObject-(instancetype_Nullable)initWithError:(NSError**)error;@end当然,这在Objective-C中工作得很好。在Swift中,-initWithError被桥接为init(error:())

Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Property

org.springframework.beans.factory.UnsatisfiedDependencyException:Errorcreatingbeanwithname'conversationServiceImpl':Unsatisfieddependencyexpressedthroughfield'baseMapper';nestedexceptionisorg.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'conversationMapper'definedinfi

ios - SKSpriteNode 子类 : method to remove all joints

我创建了一个SKSpriteNode的子类。我将该类的实例与SKPhysicsJointLimit类型的关节连接在一起。我在GameScene的didEndContact(contact:SKPhysicsContact)中执行此操作:varjoint=SKPhysicsJointLimit.jointWithBodyA(contact.bodyA,bodyB:contact.bodyB,anchorA:pos1!,anchorB:pos2!)self.physicsWorld.addJoint(joint)目前效果很好。然后我到了要从关节释放节点的地步。AccordingtotheS

PostMan Request method ‘xx‘ not supported问题解决

问题描述:Request method 'GET' not supported问题分析:1、真正的请求地址为https协议,但是在PostMan中以POST方式请求http协议的地址,这时会变成GET请求,导致报错。解决办法:将请求地址改为https协议即可。

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

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