经常尝试和搜索。当superview框架很小时,添加为子视图的按钮远离视图。当帧很小时,我不希望它出现。
UIView *vw = [[UIView alloc] initWithFrame:CGRectMake(20 , 100, 200, 30)];
UIButton *btn = [UIButton buttonWithType:UIButtonTypeSystem];
[btn setTitle:@"OK" forState:UIControlStateNormal];
[btn setFrame:CGRectMake(20 , 100, 30, 20)];
[vw sendSubviewToBack:btn];
[vw addSubview:btn];
[vw setBackgroundColor:[UIColor redColor]];
[self.view addSubview:vw];
这是我的代码。它看起来像这样
答案 0 :(得分:2)
查看UIButton的框架。它的起源是100px。它应该是0,如果你想将它添加到大众。
答案 1 :(得分:1)
你做错了。在将btn添加到视图之前,您已调用sendSubviewToBack:
。只需重写如下。
[vw addSubview:btn];//First
[self.view addSubview:vw];//second
[vw sendSubviewToBack:btn];//Third
如果它位于superview之外,你不想出现,使用它。 vw.clipsToBounds = YES