相关疑难解决方法(0)

运行时的Objective-C动态属性?

是否可以创建一个在运行时可以具有任意数量的动态属性的Objective-C类?

我希望能够mySpecialClass.anyProperty在我的类中调用和拦截它,以便能够提供我自己的自定义实现,然后可以NSString在运行时返回(例如)引发异常.显然这一切都要编译.

理想的情况是,如果我可以使用类似于新文字语法的东西来引用我的属性,例如mySpecialClass["anyProperty"].

我想在某种程度上我想创建类似动态NSDictionary的东西,没有CFDictionary后备存储,它分别在属性获取和设置上执行2个自定义方法,属性名称传递给这些访问器方法,以便他们可以决定做什么.

objective-c

11
推荐指数
1
解决办法
4774
查看次数

Objective-C中的Mixins或多重继承?

比方说,例如,我有MyUITextViewSubclass从继承UITextViewMyUITextFieldSubclass从中继承UITextField和这两个子类中含有大量的相同的方法和属性类似的行为添加到这些UI控件.

由于UITextViewUITextField从不同的类继承,有一个简单的方法来创建一个抽象类,所有这些重复的代码相结合? 换句话说,是否有可能创建一个我可以从这两个子类继承的抽象类,然后只是覆盖两者之间不同的方法?

到目前为止我所知道的:

  • 我知道Objective-C不支持多继承(从两个或更多类继承)
  • 我知道我可以使用Categories添加常用方法,但我认为这不会解决覆盖init方法或添加私有属性

abstract-class objective-c uitextfield uitextview ios

9
推荐指数
1
解决办法
3526
查看次数