问题标签 [kvc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kvc - KVC valueForKey 返回一个 __NSCFConstantString 而不是一个 __NSCFString
我在我的项目中使用 KVC。
而且,在我的一堂课中,我写了这个属性:
我想在该属性中放置一个 NSString 对象:
在设置值之前,我想测试目的地的类名。
结果是 xcode 表明类不一样!
我读到这不是很重要,并且 __NSCFConstantString 是 NSString 的私有子类。
但是,就我而言,我需要在更新对象之前检查对象的所有属性。
而且我不想在我的代码中有:
伯克!
有人有同样的问题吗?
非常感谢你的帮助 !
xcode - Interface Builder 的用户定义的运行时属性不接受浮点数?
我创建了一个具有 float 属性的 NSView 子类,我想在 Interface Builder 中设置它。在用户定义的运行时属性部分,唯一合适的类型是数字。但是,如果我想输入一个十进制数(使用 . 或 , 作为分隔符),它只会四舍五入到最接近的整数。这是一个错误还是故意的?如何定义浮点数而不是整数?
objective-c - 有没有更优雅的方法在 NSArray 中查找唯一的 NSDictionary 键?
目标:使用优雅的代码获取包含给定 NSDictionary(s) 的唯一键的 NSArray
当前工作解决方案的示例代码:
它返回所需的键数组:
问题:有没有更优雅的方法来解决这个问题?肯定有一些 KVC 方法可以获取所有键而无需遍历数组吗?我一直在查看 Apple Developer Documentation,但找不到解决方案。有任何想法吗?(纯粹看代码的优雅而不是性能)。
objective-c - iOS KVC DRY 突变
我正在尝试将字符串字典从 JSON 提取映射到符合 KVC 的 NSManagedObject,我可以成功使用setValue: forKey:
,但我看不到如何映射类型。
例如,我不应该将日期设置为任何随机字符串:Printing description of myDate:
asdfsadf
但是它起作用了。
我查看了https://stackoverflow.com/a/5345023/828859,它提供了一些有用的答案。我可以进入并为每个属性创建验证......但这似乎不是很干燥,因为每次我有一个日期时我都必须验证每个日期并分别设置输出值。
我更愿意在使用之前按类型进行变异,setValue: forKey:
但我不知道如何区分属性类型。
我想做的事:
iphone - 核心数据获取:按关系计数排序
我正在尝试获取其中一个关系中计数最少的实体。该实体称为解决方案,它具有称为 gamesFeaturedIn 的一对多关系,其中链接到 Game 对象。所以我这样做(使用 RestKit 便利方法):
这会引发错误:
'包含不应该有的 KVC 聚合的密钥路径;无法处理 gamesFeaturedIn.@count'
几年前我发现了一些类似问题的帖子。也许事情已经发生了变化,旧帖子没有给出任何明确的答案来说明如何在不将所有对象提取到内存并手动执行计算的情况下做到这一点。任何人?
编辑:核心数据存储是 SQLite 支持的,所以我不能使用瞬态属性进行排序。
objective-c - 使用 KVC 跨 n 键查找最小值
再次卡在 Obj-C 中的 KVC 上。
我想使用 KVC 来找到多个键的最小值。
考虑以下数组:
我可以通过以下方法轻松找到“a”、“b”或“c”的最小值:
我想要实现的是获取键的 NSSet 或 NSArray 并在这些键的池中找到最小值。
感谢任何指针:)
objective-c - 这个对象是否符合 KVC?
我试图了解如何在 Xcode 中使用绑定。我有这堂课:
和
这符合 KVC 吗?我发现的例子似乎是在合成属性之前。
如果它不符合 KVC,我必须做什么才能做到这一点?
cocoa - 如何绑定到 NSArrayController 的排列对象
我想以编程方式将自定义类 ( MyClass
) 数组绑定到数组控制器 ( NSArrayController
),并将其内容绑定到另一个数组 ( modelArray
)。MyClass
显示数组的内容,如NSTableView
.
我的问题是:如何以调用可变数组的方法的方式创建此绑定,即方法
(1)如果我这样绑定,上面的方法都被调用了但是控制器的内容不再绑定到modelArray
(明显)
(2) 如果我以这些方式绑定,则只调用setContent:
andcontent
方法而不调用可变方法。我也尝试删除这些方法(setContent:
和content
),但它只会引发异常setValue:forUndefinedKey:
或者
我不相信每次在绑定到数组控制器时添加一行时都会重新设置整个表的数组,我希望有相同的绑定。
objective-c - 从 NSDictionary 将实例变量初始化为键/值对?
我将 NSObject 子类的公共接口定义为,
是否有实现 initWithDict: 方法的技巧,以便我可以传递定义为的 NSDictionary
{“key1”:“value1”,“key2”:“value2”,“key3”:“value3”}
init 方法可以设置相关的实例变量及其对应的“值”吗?
iphone - 键值编码@UnionOfObjects
我无法弄清楚@UnionOfObjects 提供了一个简单的 valueForKey: 或 valueForKeyPath: 不能做的事情。
@unionOfObjects 运算符返回一个数组,该数组包含由运算符右侧的键路径指定的属性中的不同对象。与“@distinctUnionOfObjects”不同,重复的对象不会被删除。以下示例返回交易中交易的收款人属性值:
生成的收款人数组包含以下字符串:绿色电力、绿色电力、绿色电力、汽车贷款、汽车贷款、汽车贷款、通用电缆、通用电缆、通用电缆、抵押贷款、抵押贷款、抵押贷款、动物医院。
在上面的例子中,
将返回相同的值数组,但代码更少。我错过了什么?