我创建了UIScrollView
,现在正尝试在滚动视图上放置UIButton
。但是,当我构建并运行应用程序时,滚动视图仍然正常,但我看不到UIButton
。
我在界面构建器中链接UIButton IBOutlet
。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
scrollView = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
scrollView.backgroundColor = [UIColor blackColor];
scrollView.delegate = self;
scrollView.bounces = NO;
backgroundImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"auckland-300.jpg"]];
image = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"249a-134206f1d00-1342071f5d9.ImgPlayerAUCKLAND.png"]];
// Note here you should size the container view appropriately and layout backgroundImage and image accordingly.
containerView = [[UIView alloc] initWithFrame:CGRectMake(0,0,601,601)];
playButton = [[UIButton alloc] init]; //test button cannot see it.
[containerView addSubview:backgroundImage];
[containerView addSubview:image];
scrollView.contentSize = containerView.frame.size;
[scrollView addSubview:containerView];
scrollView.minimumZoomScale = 0.5;
scrollView.maximumZoomScale = 31.0;
[scrollView setZoomScale:scrollView.minimumZoomScale];
self.view = scrollView;
}
任何帮助将不胜感激
答案 0 :(得分:1)
一切似乎都好。但我认为您无法看到按钮playButton
的原因是因为您没有将其添加到view
本身。
你不需要这样做吗? [containerView addSubview:playButton];
为了帮助你,这就是我为调试做的事情 -
UIView实现了一种有用的描述方法。另外,它 实现一个recursiveDescription方法,你可以调用它来获取一个 整个视图层次结构的摘要。
NSLog(@"%@", [controller.view recursiveDescription]);
答案 1 :(得分:0)
按钮可能在您将控制器视图链接到的笔尖中,对吗?通过将滚动视图分配给视图,可以从中删除视图 来自控制器的笔尖,这就是为什么你看不到te按钮或按下它。
您可以将按钮放在滚动视图中,也可以将scrollView和playButton都添加为self.view的子视图。
也许你想重新考虑你的设计。 在滚动视图上放置一个按钮对我来说似乎不是一个好习惯。