對不起,初學者的問題:如何將相同的子視圖添加到不同的視圖?
我已經創建了一個UILabel的實例,並且想將這個UILabel的副本添加到4個不同的視圖。我嘗試了下面的代碼,但它不起作用,因爲我將UILabel分配給一個視圖,然後將其分配給下一個 - 這會導致UILabel從第一個視圖中刪除。此進行,所以我結束與的UILabel被分配只有到最後的觀點:
UILabel *titleTitle = [[[UILabel alloc] initWithFrame:CGRectMake(120, -48, 100, 28)] autorelease];
titleTitle.text = @"Index";
titleTitle.textColor = [UIColor blackColor];
titleTitle.backgroundColor = [UIColor clearColor];
titleTitle.font = [UIFont fontWithName:@"Ballpark" size:25.0f];
[indexView addSubview:titleTitle];
[indexView2 addSubview:titleTitle];
[indexView3 addSubview:titleTitle];
[indexView4 addSubview:titleTitle];
如何管理到的UILabel的拷貝分配給我的意見?
的UIView及其後代通常不支持NSCopying協議。 NSCoding是正確的方式)。 – 2011-05-23 19:45:01
@Michael Petrov:那麼我如何在這種情況下使用NSCoding? [titleTitle副本]不起作用,對吧? – 2011-05-23 19:49:57
我喜歡你的答案,因爲它是更正確和有效的方式來做事情,特別是作爲標籤的簡單事情。歸檔和非歸檔是一種非常繁瑣的策略,應該只用於複製大型嵌套UIViews樹(然後才能仔細考慮)。 – 2011-05-23 20:16:30