現在、別のビューコントローラー(BackgroundMapViewController)からのセグメント化されたコントロールを使用して、マップのマップタイプを(MapsViewControllerから)変更しようとしています。ページ カールを使用して、セグメント化されたコントロール (iPhone のマップ アプリなど) でビューコントローラーを表示します。問題は、BackgroundMapViewController から MapsviewController に情報を渡す方法がわからないことです。(おそらく委任を使用して??) 委任を使用して、オブジェクトの「作業」を他のオブジェクトに与えることは理解しましたが、ここでそれをどのように使用すればよいかわかりません。誰かが私の問題で私を助けてくれたら本当にありがたいです
(ここで UI の写真を見ることができます: http://i50.tinypic.com/169masx.png )
MapsBackgrounsViewController.h
@interface MapBackgroundViewController : UIViewController{
IBOutlet UISegmentedControl *segmentedControl;
MKMapType mapType;
}
@property (nonatomic) IBOutlet UISegmentedControl *segmentedControl;
@property(nonatomic) MKMapType mapType;
- (IBAction)segmentedControllChanged:(id)sender;
MapsViewController.m
@interface MapBackgroundViewController ()
@end
@implementation MapBackgroundViewController
@synthesize segmentedControl, mapType;
- (IBAction)segmentedControllChanged:(id)sender {
if (segmentedControl.selectedSegmentIndex == 0) {
mapType = MKMapTypeStandard;
}else if (segmentedControl.selectedSegmentIndex == 1) {
mapType = MKMapTypeSatellite;
} else if (segmentedControl.selectedSegmentIndex == 2) {
mapType = MKMapTypeHybrid;
}
[self dismissModalViewControllerAnimated:YES];
}
MapsViewController.h
@interface MapsViewController : UIViewController<MKMapViewDelegate, UISearchBarDelegate>{
@private
IBOutlet MKMapView *map;
//some other outlet
}
@property (nonatomic, retain) IBOutlet MKMapView *map;
@property (nonatomic, retain) IBOutlet UISearchBar *searchBar;
//some other actions and properties