我是 iOS 开发新手,如果答案很明显,我深表歉意……但对我来说不是。 我有一个 APP,其根部有一个导航 Controller 。 我有许多非常相似的外观区域要创建的应用程序。 这些都是 UItableviewcontroller,它已经进行了相当多的定制,以允许 tableview 旁边的按钮和其他控件,这些控件的大小已减小,以允许在其旁边和下方进行控件。 按钮、文本、背景等以及加载的数据必须完全独立于应用程序的特定区域。 我通过在 Xcode 中简单地添加一个新的文件子类来创建一个 UItableviewcontroller 子类。 我在 xib 中创建了我的界面...创建了所有方法来驱动我需要的东西。 看起来不错……一切似乎都很好。如果我单独使用它...效果很好。
问题:我不知道如何继承我的自定义子类 UITVController! 它的所有属性都不能从新的子类中获得。 我显然不明白这里是如何运作的。
我已经尝试添加一个新文件 > UIViewcontroller 子类并将父类(super class)更改为我的自定义父类(super class)...无济于事。没有可访问的属性。
我挖啊挖,变得比什么都更糊涂。 有没有好心人帮我把它弄好。挫败感正在增加。 谢谢 凯斯佩
编辑: 哇,发现问题了。我已经打开 Xcode 很多天,打开了几个项目。 它完全怪异了! 事实上,jrturton 和 eugene ......我确实知道我在做什么(我以为我快疯了......之前在我的应用程序中做过这个但突然没有工作)Xcode 完全失去了它的大脑!
有人见过 Xcode 这样做过吗???使用 4.1
该死的浪费了包括你在内的大量宝贵时间。 谢谢大家
最佳答案
当你对任何东西进行子类化时,你可以通过点语法对自身进行寻址来访问父类的属性
@interface BaseClass : NSObject {
@public
NSString *baseclassString;
}
@property (nonatomic, copy) NSString *name;
@end
.h
@interface HigherClass : BaseClass
@end
.m
@implementation HigherClass
- (id)init {
self = [super init];
self.name = @"Hola";
self->baseclassString = @"Hola";
return self;
}
- (void)viewDidLoad {
NSLog(@"name: %@", self.name);
}
@end
这一切都不是 100% 的内存清理,但您必须掌握这里发生的事情并根据您的应用程序适本地调整它。
关于objective-c - 为什么在我对自定义的 UIViewController 进行子类化时无法访问变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8463345/