我創建8個不同的對象上的腳本中(4雙的UIImageView和TextView的)和它們中的每連接到一個IBOutletCollection,但是當我爲此幀返回空
for (UIView *element in infoElements) {
NSLog(@"frame: %@", NSStringFromCGRect(element.frame));
}
它返回
frame: {{0, 0}, {0, 0}}
[infoElements計數]返回正確8
和
NSLog(@"element: %@", element);
正確返回對象,只有框架丟失。我只需要IBOutletCollection中每個對象的位置(x和y)。
初始化是這樣的:
@interface infoViewController : UIViewController{
IBOutletCollection(UIView) NSArray *infoElements;
}
@property (nonatomic, retain) IBOutletCollection(UIView) NSArray *infoElements;
我GOOGLE了它幾個小時,現在並沒有發現任何人有同樣的問題(除this unanswered question here),所以我認爲我只是在做什麼錯
編輯
只是爲了澄清,在IBOutletCollection的對象是未在位置0,0和是雙向gger than 0,0
你在哪裏運行這段代碼?在'-init','-viewDidLoad'或其他地方?當你註銷元素本身時,你可以發佈實際輸出嗎? –
-viewDidLoad,第一個元素的輸出是:element:> –
athospy
這就是你的問題。取而代之的是,它將在 - 看來會出現。 – AMayes