2011-11-02 24 views
1

我在viewWillAppear方法中設置了以下代碼。ViewWill在iphone中的查詢查詢

- (void)viewWillAppear:(BOOL)animated 
{ 
    //some code of ausregion 
    mapView.region = AusRegion; 
    mapView.showsUserLocation = NO; 
    addressField.text = [NSString stringWithFormat:@""]; 
    [super viewWillAppear:animated]; 
} 

當我的應用程序啓動第一個屏幕時,它會打開。這是我的地圖應用程序,我在按鈕單擊事件上設置了代碼以執行某些操作。 [例如。 textfield獲取當前地址和地圖填充使用註釋放大到當前位置]。現在,當我跳到另一個列表視圖控制器並返回到我的第一個屏幕時, - (void)viewWillAppear:(BOOL)動畫方法再次被空白文本字段調用,沒有當前位置等。我想保留屏幕以前的更改[例如。包含當前地址和地圖的文本字段使用註釋放大到當前位置]。從列表視圖控制器返回到我的第一個屏幕後。

我該怎麼做到這一點?

編輯: 我在下面的操作

 RootViewController *list = 
[[RootViewController alloc] initWithNibName:@"RootViewController" bundle:nil]; 
    [self presentModalViewController:list animated:YES]; 

調用列表視圖控制器和從RootViewController的回國後我要地圖查看當前的註解,因爲我得到的RootViewController的,而不只是澳洲大陸列表視圖之前執行的操作。

回答

3

嘗試使用viewDidLoad而不是viewWillAppear。然後,代碼將只在視圖加載時(從筆尖)運行,而不是每次都會重新出現。

+2

以前我只在viewDidLoad方法中設置了這段代碼。但它沒有給出結果,因爲我想[澳大利亞大陸地區]推出應用程序後... –

+0

通過在ViewWillAppear代碼中設置一些條件解決;)感謝您的回覆 –

+0

很高興它的工作。希望我的回答有幫助! – Keith