프로그래밍 방식으로 nib 속성을 설정하려고합니다. 특히, 펜촉으로 초기화 된보기 컨트롤러가 있고 이제는 프로그래밍 방식으로 [mapView setMapType : MKMapTypeHybrid]를 시도하지만이를 설정하지 않습니다.프로그래밍 방식으로 NIB 확인란 변경
내 mapView는 IBOutlet MKMapView이며지도보기를 내 펜으로 드래그하고 mapView를지도보기로 연결했습니다.
지도보기의 속성 검사기에서 유형을 설정하면 올바르게 작동합니다. 프로그래밍 방식으로이 작업을 수행 할 수있는 방법이 있습니까?
몇 달 전 nibs를 사용하기를 포기했지만 (Xcode를 시작한 직후),이 문제를 파악하는 것이 좋습니다. 감사
MapTabViewController.h
#import <MapKit/MapKit.h>
@interface MapTabViewController : UIViewController <MKMapViewDelegate>
@property (nonatomic, strong) IBOutlet MKMapView *mapView;
MapTabViewController.m
-(id) initWithTabBarAndNibName: (NSString *) nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.title = MAPTAB_TITLE;
self.tabBarItem.image = [UIImage imageNamed:MAPTAB_ICON];
self.mapView = [[MKMapView alloc] init];
[self.mapView setMapType:MKMapTypeHybrid];
}
return self;
}
AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.dataModel = [[DataModel alloc] init];
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
tabBarController = [[UITabBarController alloc] init];
vc_tacTab = [[TacTabViewController alloc] initWithTabBarAndNibName:@"TacTabViewController" bundle: nil];
vc_tacTab.dataModel = self.dataModel;
vc_mapTab = [[MapTabViewController alloc] initWithTabBarAndNibName:@"MapTabViewController" bundle:nil];
vc_mapTab.dataModel = self.dataModel;
NSArray *localControllersArray = [[NSArray alloc] initWithObjects:vc_tacTab, vc_mapTab, nil];
tabBarController.viewControllers = localControllersArray;
[self.window addSubview:tabBarController.view];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
몇 가지 코드를 게시 하시겠습니까? – onnoweb