草庐IT

CLASS_NAME

全部标签

ES6之Promise、Class类与模块化(Modules)

目录PromiseClass类extendssuperModules模块系统exportdefault和对应importexport和importPromisePromise是ES6引入的一种用于处理异步操作的对象。它解决了传统回调函数(callback)模式中容易出现的回调地狱和代码可读性差的问题。Promise对象有三种状态:Pending(进行中):初始化状态,表示异步操作还在进行中。Fulfilled(已成功):表示异步操作执行成功,并且返回了一个值。Rejected(已失败):表示异步操作执行失败,抛出一个错误或异常。Promise对象具有以下特点:Promise构造函数接收一个执行

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

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

generics - 如何在 Swift 泛型中说 "same class"

如果Swift泛型类型约束是一个协议(protocol)名称,我可以要求受该协议(protocol)约束的两个类型是同一类型。例如:protocolFlier{}structBird:Flier{}structInsect:Flier{}funcflockTwoTogether(f1:T,f2:T){}flockTwoTogether函数可以用鸟和鸟或昆虫和昆虫调用,但不能用鸟和昆虫调用。这就是我想要的限制。到目前为止,还不错。但是,如果我用类名尝试同样的事情,它不起作用:classDog{}classNoisyDog:Dog{}classWellBehavedDog:Dog{}fun

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 - 如何使用其父类(super class)的实例初始化我的子类?

在我的应用程序中,我读取了EKEvent类型的日历事件,并且我使用大量计算变量进行了扩展,因此我可以轻松地获取日历中每个事件的持续时间、工时数等。但是在大规模情况下,性能很差-所以我想改用惰性变量来缓存我所有的额外数据。因此,我想创建一个EKEvent的子类-称为CustomEvent,它添加了惰性变量,但我的问题是EKEventStore总是返回EKEvents,我需要将其转换为我的CustomEvent子类的实例,以便能够访问惰性变量等。简单的类型转换是不够的,我已经在Playground上尝试过,看看有什么用,但没有任何用处。我需要一个CustomRectangle的特殊构造函数

ios - 由于未捕获的异常 'NSUnknownKeyException' 而终止应用程序,原因 : this class is not key value coding-compliant for the key Label2. '

这个问题在这里已经有了答案:Xcode-Howtofix'NSUnknownKeyException',reason:…thisclassisnotkeyvaluecoding-compliantforthekeyX"error?(78个答案)关闭5年前。这是我收到的确切错误消息:Terminatingappduetouncaughtexception'NSUnknownKeyException',reason:'[setValue:forUndefinedKey:]:thisclassisnotkeyvaluecoding-compliantforthekeyLabel2.'我创建了

swift - 当子类中有覆盖函数时如何转换为父类(super class)

创建了父类(superclass)Car和子类Jaguar。子类中的函数info()->Void覆盖了父类(superclass)的函数。已创建类型为Jaguar的名为theAuto的实例。问题:似乎我无法将theAuto转换为Car类型,请查看代码片段及其注释classCar{funcinfo(){print("You'vegotacar")}}classJaguar:Car{overridefuncinfo(){print("You'vegotaJaguar")}}lettheAuto=Jaguar()theAuto.info()//-->You'vegotaJaguarletau

ios - 更新后结构崩溃 : [Fabric isCrashlyticsCollectionEnabled]: unrecognized selector sent to class 0x10c0bb918

今天fabric在pod更新后崩溃Fabric1.9.0[FabricisCrashlyticsCollectionEnabled]:unrecognizedselectorsenttoclass0x10c0bb918崩溃线:Fabric.with([Crashlytics.self])它在应用程序启动时崩溃。有人遇到同样的问题吗? 最佳答案 我通过更新我的Podfile恢复到以前版本的Crashlyticspod'Fabric','1.8'pod'Crashlytics','3.11'然后更新Cocoapods:pod更新“Cra

Flyweight Pattern —— Creational Class

享元模式在主流的标准里是放到结构大类下的,但是我感觉这个模式的最终作用也是为了获取一个类,所以我将其划分到创建大类下。WhatisFlyweightPatternFlyweight是指轻量级的。享元模式旨在支持大量细粒度的对象共享,以减少内存消耗。该模式通过共享相似对象的部分状态,来减少对象的数量。通过共享,可以节省内存并提高系统的性能。享元模式通常涉及两个关键概念:内部状态(IntrinsicState)内部状态是可以共享的部分,存储在享元对象内部;外部状态(ExtrinsicState)外部状态是不可共享的部分,需要在使用时提供。通过将内部状态与外部状态分离,可以实现对象的共享。享元模式适