我在UIViewController中有一個UIView,我在viewDidAppear
方法中添加了一個自定義子視圖。如何使用自定義子視圖更新或重置UIView?
MyView *myView = [[MyView alloc] initWithLabelText:text];
[self.view addSubview:myView];
[myView release];
的text
變量是在myView
的標籤上使用的字符串。每當您回到當前視圖時,此text
都會更改。但似乎viewDidAppear
不重新加載視圖 - 它反而加載一個新的視圖 - 所以我有兩個標籤在彼此。
我試着用viewWillAppear
但它沒有任何區別。我也嘗試使用[self.view setNeedsDisplay]
- 沒有幫助。我也試圖讓myView
成爲一個實例變量,但它也沒有幫助。
什麼工作是明確移除來看,當我宣佈它作爲一個實例變量:
- (void)viewDidDisappear:(BOOL)animated
{
[_myView removeFromSuperview];
}
雖然這個解決辦法,我想又回到了它,當簡單地重置視圖。有誰知道如何做到這一點?我會很感激它;)
謝謝。但是它必須再次成爲一個實例變量,不是嗎? – marikaner 2010-08-31 01:03:02
不一定,但是也是屬性的實例變量是一個好地方,因爲這有助於管理保留計數。 (並確保不要用相同名稱的局部變量「覆蓋」實例變量,或者錯誤地在另一個對象中使用實例變量)。 – hotpaw2 2010-08-31 01:32:36