我有一个主ViewController:
@interface ViewController : UIViewController
我的ScreenView有一个属性:@property (strong,nonatomic) MUIScreenView* screenView;
它将通过以下方式调用:
- (void)viewDidLoad
{
[super viewDidLoad];
[self.view addSubview:_screenView];
}
现在看看我的MUIScreenViewClass:
@interface MUIScreenView : MUIView
@interface MUIView : UIView
在我的MUIScreenView中我有一个方法:
-(void)addScreenObjectToView
{
MUIButton *button = [[MUIButton alloc] initWithButtonModel:(ButtonModel*)MUIElement
[self addSubview:button];
UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
myButton.frame = CGRectMake(10, 220, 300, 40);
[myButton setTitle:@"This is Standard UIButton!" forState:UIControlStateNormal];
[myButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:myButton];
}
这是我绘制东西的MUIButton方法:
-(void)addButtonToView
{
UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
myButton.frame = CGRectMake(10, 50, 300, 40);
[myButton setTitle:@"This is a MUIButton!" forState:UIControlStateNormal];
[myButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:myButton];
}
最后我有:
顶部按钮是否已经死亡怎么可能?如果我触摸它没有任何事情发生。我以同样的方式激动地创造了它。
总结 - 我目前显示为“这是一个MUIButton!”是一个视图包含另一个视图,在第二个视图中我有UIButton。 作为“这是一个标准的UIButton!”是包含UIButton的视图。
答案 0 :(得分:1)
您需要将对主视图控制器视图的引用传递给子视图,然后将按钮添加到该视图。您无法在其他视图上调用选择器并使用正确的视图接收它。