我正在rootviewcontroller中使用基於導航的應用程序 ,我有幾個UITextField。在rootviewController上有一個按鈕,點擊該按鈕,我使用pushviewcontroller更改視圖。我想在mapview中使用在這些UItextField中輸入的值,即我的第二個視圖。數據在基於導航的應用程序中傳遞
PLZ給我一些建議。
我正在rootviewcontroller中使用基於導航的應用程序 ,我有幾個UITextField。在rootviewController上有一個按鈕,點擊該按鈕,我使用pushviewcontroller更改視圖。我想在mapview中使用在這些UItextField中輸入的值,即我的第二個視圖。數據在基於導航的應用程序中傳遞
PLZ給我一些建議。
在推送到導航堆棧之前,您可以將所有信息傳遞給第二個控制器。
見供你參考的僞代碼:
第一:
MyMapController* myController = [MyMapController alloc] initWithValues:Value1,value2,value3,......valuen];
[self.navigationController pushViewController:myController animated:YES];
[myController release];
myController = nil;
二:
MyMapController* myController = [MyMapController alloc] init];
myController.value1 = value1;
myController.value2 = value2;
myController.value3 = value3;
............
myController.value7 = value7;
myController.value8 = value8;
[self.navigationController pushViewController:myController animated:YES];
[myController release];
myController = nil;
可能有更多的方式發送數據,
在推送之前將值分配給第二個控制器。假設你必須發送textfield1的值。現在
secondController.textfield1 = textfield1;
然後做你的推動控制器。
使用一個NSDictionary
對象來存儲來自第一個控制器的值。假設您使用兩個文本字段 - textField1和textField2。
- (void)loadSecondController {
NSDictionary *values = [NSDictionary dictionaryWithObjectsAndKeys:textField1.text, @"textField1", textField2.text, @"textField2", nil];
// Assuming you are using IB files
SecondViewController *controller = [[SecondViewController alloc] initWithNibName:nil bundle:nil];
controller.values = values; // Declare a NSDictionary property 'values' in SecondViewController
[self.navigationController pushViewController:controller animated:YES];
[controller release];
}
現在SecondViewController
,您可以訪問它們作爲
...
textField1Value = [values objectForKey:@"textField1"];
textField2Value = [values objectForKey:@"textField2"];
...
但我怎麼做到這一點? – 2011-05-17 11:46:58
thanx幫助jhaliya – 2011-05-17 12:08:20