2011-04-21 72 views
2

我需要添加一個視圖到應用程序中的多個視圖。 我正在運行一個函數,循環遍歷所有的UIViews並將該視圖添加爲子視圖。無法添加視圖作爲子視圖到多個視圖 - iphone dev

我做了這樣的事情:

-(void) setViewForEachSegment: (UIView*)view { 
    int i; 
    for (i = 0; i < [segments count]; i++) { 
     [[segments objectAtIndex:i] addSubview: view] 
    } 
} 

這裏細分領域的UIViews數組。

現在,發生的情況是子視圖僅添加到最後一個段。

有沒有其他人面臨同樣的問題?我一直在研究它很多小時,但不知道如何解決它。

回答

4

您不能將一個視圖添加到多個視圖中,因爲視圖一次只能有一個父視圖。這是superView代表您的UIView的財產。

每次加之前先查看創建UIView的一個新對象,

+0

謝謝!有想法。 – 2011-04-21 07:03:51

3

UIView class reference

父視圖可以包含任意數量的子視圖但是每個子視圖僅具有一個上海華,這是負責適當定位它的子視圖。

因此,每次將視圖添加到不同的父視圖時,它都會從前一個父視圖中刪除。您需要更改視圖層次結構以適應您正在嘗試執行的操作,否則您需要將多個子視圖添加到每個父視圖。

+0

謝謝,我知道了! – 2011-04-21 07:03:19

相關問題