2012-08-15 19 views
0

我有我在界面生成器中設計的UIViewController。在它的頂部附近有一個UIImageView,然後是一些其他的視圖(文本等)下面。這些被設置爲錨定到視圖的頂部。隱藏或刪除UIImageView和排列(IOS 5)

在視圖加載的代碼中,我在某些情況下刪除了UIImageView,但它似乎仍佔用空間,或者下面的視圖不會根據它們的Anchor彈出到頂部。

如何刪除上面的視圖,讓下面的視圖向上移動?

回答

1

可以更改其他元素的框架在視圖中。

中您可以使用類似的東西viewDidLoad方法

-(void)viewDidLoad{ 
    if(imageVisible){ 
     otherElements.frame = CGRectMake(....); 
    }else{ 
     otherElements.frame = CGRectMake(....); 
    } 
} 

我不知道什麼是視圖的結構,但你可以考慮嵌套所有其他元素在一個視圖中,所以你可以改變一個命令中的所有元素位置。

+0

謝謝,將不得不手動它似乎。 – Mark 2012-08-16 08:36:59

+0

高興地幫助:) – shannoga 2012-08-16 10:35:54

1

與Android視圖層次結構不同,iOS視圖層次結構都是以絕對座標開發的。當你說子視圖錨定在頂部時,這意味着如果父視圖的大小發生變化,你的視圖將保持與屏幕頂部相同的相對位置。

爲了使圖像視圖下方的意見拉昇當圖像被隱藏或刪除,則必須自己手動安排他們佔偏移