Iphone 为什么我的ViewController没有响应?
我用UIImageView设置了一个类,我想将它添加到主viewcontrollers视图中,但它不起作用 这是我的代码,我确信有一些明显的遗漏: MyViewController.h:Iphone 为什么我的ViewController没有响应?,iphone,objective-c,class,Iphone,Objective C,Class,我用UIImageView设置了一个类,我想将它添加到主viewcontrollers视图中,但它不起作用 这是我的代码,我确信有一些明显的遗漏: MyViewController.h: #import <UIKit/UIKit.h> #import "ImageClass.h" @class ImageClass; @interface MyViewController : UIViewController { } @end Image
#import <UIKit/UIKit.h>
#import "ImageClass.h"
@class ImageClass;
@interface MyViewController : UIViewController {
}
@end
ImageClass.h:
#import <UIKit/UIKit.h>
#import "EnkelBildeKlasseViewController.h"
@class MyViewController;
@interface ImageClass : NSObject {
MyViewController *maincontroller;
UIImageView *image;
}
@property (nonatomic, retain) UIImageView *image;
-(void)draw;
@end
主viewcontroller中的任何内容都不会更改。。怎么了
我还尝试将其与IB连接:
IBOutlet MyViewController *maincontroller;
但它仍然没有反应!我应该怎么做?您需要在drawRect:中进行绘图,并且需要将imageClass设置为UIView子类,并将其添加为子视图。请参阅本教程:我看不到主控制器的任何分配和初始化。您可以在主控制器的ImageClass上创建一个属性,并在调用[test draw]之前将其设置为self;我不必在drawRect:中进行绘图,主要问题是如果我可以访问图像并添加它,我使用您的建议(UIView子类)找到了一个解决方法,它成功了。
#import "ImageClass.h"
#import "MyViewController.h"
@implementation ImageClass
@synthesize image;
- (id)init {
if ((self = [super init])) {
}
return self;
}
-(void)draw {
maincontroller.view.backgroundColor = [UIColor redColor];
image = [[UIImageView alloc] init];
image.backgroundColor = [UIColor greenColor];
image.frame = CGRectMake(100, 100, 100, 100);
[maincontroller.view addSubview:image];
}
IBOutlet MyViewController *maincontroller;