来自ViewController的子类UIView

时间:2013-01-13 21:44:50

标签: ios xcode uiview viewcontroller

我正在尝试在viewController中显示屏幕教程(如带有提示的图片)。我只知道如何使用UIView方法“打开”drawRect,其中我的绘图代码在里面,来自AppDelegate:

BannerView *view = [[BannerView alloc] initWithFrame:self.window.frame];
[self.window addSubview:view];
[self.window makeKeyAndVisible];

是否可以通过ViewController内的按钮激活UIView(BannerView)?

非常感谢!

2 个答案:

答案 0 :(得分:1)

我相信你要找的是为视图控制器上的按钮添加一个事件处理程序,它将创建视图并使用类似

之类的内容添加视图
BannerView *view = [[BannerView alloc] initWithFrame:CGRectMake(x,y,width,height)];
[self.view addSubview:view];

其中self是视图控制器。

答案 1 :(得分:1)

只需使用此代码:

BannerView *view = [[BannerView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:view];
按钮操作方法中的

(如果它在控制器类中定义)。见S.O.要知道的问题how to create a button programmatically。否则,您可以使用界面构建器。

self.view.bounds中使用initWithFrame会使您的横幅视图与控制器视图一样大(可能小于显示屏)。