我有一个简单的iOS应用程序,其中一个名为Dictionary
的类(.m和.h)有几个用于构建NSArray
NSDictionary
个UITableViewController
个对象的函数,然后用于操作数据结构。我有一个Dictionary
类,它具有表视图委托方法,但我无法弄清楚如何在UIViewController
中创建Dictionary *dictionary = [[Dictionary alloc] init]
类的实例,以便能够让所有委托方法与该类的实例进行通信(例如,当我在viewDidLoad
方法中调用cellForRowAtIndexPath
时,我无法访问{{1}}委托方法中的任何实例对iOS编程很新,对它感到非常沮丧!非常感谢任何帮助。
答案 0 :(得分:0)
听起来你需要将字典声明为你班级的成员变量。 有几种方法可以做到这一点。最快的方法是将以下@implementation调用放在表视图控制器的.m文件中。
@interface nameOftableViewControllerClass(){
Dictionary *dictionary;
}
@end
确保将nameOftableViewControllerClass替换为视图控制器类的实际名称。 然后,在视图中加载。你可以打电话给以下
dictionary = [[Dictionary alloc] init];
然后在cellForRowAtIndexPath中,您可以调用字典对象上的任何函数。 不要忘记在表视图控制器的dealloc方法中放置一个释放调用。
-(void) dealloc {
[dictionary release];
[super dealloc];
}
希望这会有所帮助,如果您有任何其他问题,请联系我
答案 1 :(得分:0)
您声明的字典变量是viewDidLoad方法的本地变量。相反,将它声明为ViewController的属性,将Dictionary分配给它,然后在委托方法中访问它(例如self.dictionary = [[Dictionary alloc] init])。