設置UISwitch我從標準模板的iPhone實用的應用程序,所以我有MainViewController
和FlipsideViewController
是被初始化,並呼籲controller.
在controller's
廈門國際銀行我有一個UISwitch
稱爲pathSwitch
和一個名爲locationSelector
是出口UISegmentedControl
(和迷上了)當我喊了showInfo:(id)sender
方法,我做到以下幾點:!麻煩FlipsideViewController
[編輯]添加controller...
[編輯2]新界面,顯示的界面添加的屬性
- (IBAction)showInfo:(id)sender {
ALog(@"method begin...");
FlipsideViewController *controller = [[FlipsideViewController alloc] initWithNibName:@"FlipsideView" bundle:nil];
DLog(@">sun path visible = %@, setting flip side controller switch", sunPathIsVisible ? @"YES" : @"NO");
// deleted -> [controller.pathSwitch setOn:sunPathIsVisible];
controller.sunPathIsVisible = sunPathIsVisible; // added this
DLog(@">location mode is %d, setting flip side controller segment index to %d - 1 = %d", locationMode, locationMode, locationMode - 1);
// deleted -> controller.locationSelector.selectedSegmentIndex = locationMode - 1;
controller.delegate = self;
controller.locationMode = locationMode; // added this
controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:controller animated:YES];
[controller release];
}
@interface FlipsideViewController : UIViewController {
id <FlipsideViewControllerDelegate> delegate;
int locationMode; // added this
UISegmentedControl *locationSelector;
BOOL sunPathIsVisible;
UISwitch *pathSwitch;
}
@property (nonatomic, assign) id <FlipsideViewControllerDelegate> delegate;
@property int locationMode; // added this
@property (nonatomic, retain) IBOutlet UISegmentedControl *locationSelector;
@property BOOL sunPathIsVisible; // added this
@property (nonatomic, retain) IBOutlet UISwitch *pathSwitch;;
- (IBAction)done:(id)sender;
- (IBAction)cancel:(id)sender;
@end
// There's also the `protocol` stuff, but I left that out here...
的問題是,該控件不接受他們的價值觀和始終顯示段0和OFF。如果我在controller's
viewWillAppear
方法中設置它們的屬性,它們確實顯示正確的設置。
是controller
沒有完全加載,當我這樣做或什麼?
感謝 - 不知道你的意思,但...我宣佈'UISwitch'和'UISegmentedControl'作爲屬性(和IBOutlets)。我將添加'controller'的界面... – Steve 2011-03-17 04:00:54
@Steve看到我更新的答案。 – mvds 2011-03-17 09:37:58
第一種方法奏效 - 謝謝。我仍然不明白爲什麼,如果我已經完成了切換和分段控制屬性,一旦視圖控制器被實例化後,我就不能直接設置它們。看起來像一個令人費解的做事方式。我更喜歡第二種方法,但得到了很多有關'-locationMode getter沒有在委託中定義的錯誤或者其他一些錯誤(不能準確記得) –
Steve
2011-03-17 15:49:49