2014-03-13 77 views
1

嘗試和搜索了很多。當超視圖的框架很小時,作爲子視圖添加的按鈕遠離視圖。我不希望它在幀很小時出現。作爲子視圖添加UIButton遠離UIView

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]; 

這是我的代碼。它看起來像這樣

enter image description here

+0

你知道superview的界限。測試你是否放置按鈕。 –

+0

檢查第一個視圖的UIButton層次.......它改變iOS 7 –

+0

給[btn setFrame:CGRectMake(20,0,30,20)]; – Spynet

回答

1

你做錯了。在添加btn查看之前,您已撥打sendSubviewToBack:。只需重寫如下。

[vw addSubview:btn];//First 
[self.view addSubview:vw];//second 
[vw sendSubviewToBack:btn];//Third 

你不希望出現,如果它是超級視角之外的謊言,使用此。 vw.clipsToBounds = YES

2

看看UIButton的框架。它的origin.y是100px。它應該是0,如果你想把它添加到vw。

相關問題