我想从app delegate类的applicationDidFinishLaunching方法更改UIImageView的图像。但我担心这个班级对控制器插座知之甚少。在这种情况下我该怎么做?
答案 0 :(得分:2)
您必须将UIImageView所在的ViewController定义到AppDelegate类,因此applicationDidFinishLaunching可以引用它。
在AppDelegate中,在interface语句之前添加 @class whateverViewController , 并定义实例。
#import <UIKit/UIKit.h>
@class WhateverViewController;
@interface WebDemoAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
WhateverViewController *whateverViewController;
}
现在你的应用程序引用了whateverViewController。然后,您可以在whateverViewController中调用方法来更改UIImageView或直接设置UIImageView。当然这假设了whateverViewController被实例化(例如alloc / init或从nib加载);在你尝试设置任何东西之前,它必须存在。
答案 1 :(得分:0)
您可能需要在应用程序委托中放置UIImageView或其控制器的插座,以便在那里访问它。