获取 Objective-C 类或实例的所有方法
在 Objective-C 中,我可以测试给定的类或实例是否响应某些选择器。但是如何查询一个类或实例的所有方法或类的属性(例如所有方法或属性的列表)?…
Objective-C 中星号的使用:相关问题
我有几个与此相关的问题:Asterisk在Objective-C中的使用 NSArray 数组;在本地范围内将是堆栈上“分配”的对象。 NSArray *数组;表示由一大块内存支…
class_getClassVariable() 的作用是什么?
我认为,如果实例变量属于类的实例,那么类变量将属于元类的实例。但我使用 Objective-C 元类的经验告诉我,这是不可能的。 我想知道 class_getClassV…
打印发送到forwardInitation的参数:NSProxy的子类
我想通过打印选择器和参数来拦截发送到代理对象的消息。即使代理没有实现它们并且没有目标对象。请帮忙。我已经查看了几个选项和 Apple 文档,但他们…
发现用户的名字和姓氏?
我正在尝试以编程方式发现 iPhone 用户的名字和姓氏。这有可能吗?称这个... getpwuid( getuid() )->pw_gecos == "Mobile User" ..唉。迭代地址簿会找…
当 object_getIvar(self, myIntVar) 返回指针时,如何从 object_getIvar(self, myIntVar) 获取 int 值
如果 object_getIvar 中的变量是基本数据类型(例如 float、int、bool),根据文档,当函数返回指针(id)时,如何获取值。 我尝试过转换为 int, int*…
处理object_getIvar(id object, Ivar ivar)的返回值
1) object_getIvar(id object, Ivar ivar) 如果 Ivar 是一个对象,则返回一个“id”,例如。 如果变量是 NSString,则可能包含该值的 id = NSString。…
Objective-C 运行时中类似 IBOutlet 的构造
我对 IBOutlets 的理解是它们充当 Objective-C 类中 ivars 和属性的标记。 Objective-C 运行时中是否有任何东西允许人们在运行时查询 ivar 或属性或类…
NSObjCMessageLogging在 iPhone 3.0 上启用
我正在调试一个为 iPhone OS 2.2.1 编写的程序,并且必须针对 3.0 稍微重写。 拥有所有正在执行的 Objective-C 消息调用(包括“幕后”调用)的列表将…
在 Modern Runtime 中使用实例变量
我在 Obj-c 和 Cocoa 方面有几年的经验,但现在才回到它以及 Obj-C 2.0 的进步等。 我正在尝试了解现代运行时和声明属性等。一让我有点困惑的是现代运…
通用 NSCoding 实现的 Objective-C Reflection
Objective-C 中是否有任何反射方法允许您通过检查对象的公共属性并生成 encodeWithCoder: 和 initWithCoder: 的通用实现来编写通用 NSCoding 实现。 …
现代 Objective C 运行时中 ivar 合成的底层机制是什么
现代(64 位 OS X 和 iPhone OS)Objective C 运行时的功能之一是属性能够动态合成 ivars,而无需在类中显式声明它们: @interface MyClass : NSObjec…