iOS 는 다양한 방식 으로 컨트롤 러 를 만 듭 니 다.

3830 단어 iOS컨트롤 러
이 글 은 여러분 에 게 storyboard 를 통 해 컨트롤 러 를 만 들 고 여러분 의 학습 에 도움 이 되 기 를 바 랍 니 다.
1.어떻게 스스로 storyboard 를 통 해 컨트롤 러 를 만 듭 니까?그 전에 시스템 에서 storyboard 를 불 러 와 서 컨트롤 러 를 만 듭 니 다.
UIStoryboard 라 는 대상 을 통 해 storyboard 파일 을 불 러 올 수 있 습 니 다.주의:storyboard 가 있어 야 UIStoryboard 대상 을 만 드 는 데 의미 가 있 습 니 다.alloc init 는 UIStoryboard 대상 을 만 드 는 데 의미 가 없습니다.
1.1>instantiate InitialViewController:화살표 가 가리 키 는 컨트롤 러 를 기본 으로 불 러 옵 니 다.
1.2>instantiateViewController With Identifier:표지 에 따라 storyboard 에서 컨트롤 러 를 찾 고 만 듭 니 다.(표 지 는 함부로 전달 해 서 는 안 되 고 잘못 보고 할 수 있 습 니 다.story board 에 이 표지 가 있어 야 합 니 다.)
1.3>현재 만 든 컨트롤 러 는 이 벤트 를 처리 할 수 없습니다.이 벤트 를 처리 하려 면 사용자 정의 컨트롤 러 가 필요 합 니 다.
현재 만 든 컨트롤 러 는 왜 이 벤트 를 처리 할 수 없 습 니까?
이유:storyboardID 를 통 해 storyboard 의 컨트롤 러 를 찾 을 때 storyboard 에서 설명 하 는 컨트롤 러 대상 을 만 듭 니 다.생 성 대상 은 먼저 클래스 이름 을 알 아야 합 니 다.storyboard 의 Custom Class 에 따라 클래스 이름 을 확인 한 다음 에 대상 을 만 듭 니 다.기본 값 은 시스템 자체 컨트롤 러 대상 이 고 시스템 자체 가 가지 고 있 는 것 은 이 벤트 를 처리 할 수 없습니다.그 는 감청 방법 을 쓸 수 없다.

따라서 컨트롤 러 이 벤트 를 처리 하려 면 컨트롤 러 를 사용자 정의 해 야 합 니 다.
2.모방 시스템 은 어떻게 main.storyboard 를 통 해 프로그램 을 불 러 옵 니까?(스토리 보드 가 있 는 항목)
2.1>storyboard 가 있 는 프로그램 입 니 다.기본 프로그램 이 시작 되면 storyboard 를 불 러 오고 창 과 루트 컨트롤 러 를 자동 으로 만 듭 니 다.
2.2>시스템 은 storyboard 를 불 러 올 필요 가 있 는 지 어떻게 판단 합 니까?메 인 인터페이스 가 설정 되 어 있 는 지,메 인 이 설정 되 어 있 으 면 메 인.storyboard 를 불 러 옵 니 다.

2.3>storyboard 파일 을 추가 합 니 다.새로 추 가 된 storyboard 를 어떻게 불 러 오고 메 인 화면 을 수정 합 니까?
2.4>모방 프로그램 이 시작 하 자마자 Main.storyboard 파일 을 불 러 오고 창 을 만 들 며 화살표 가 가리 키 는 창 루트 컨트롤 러 를 만 들 고 창 을 표시 합 니 다.(홈 인터페이스 설정 을 비우 고 캐 시 를 삭제 해 야 합 니 다)

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  // Override point for customization after application launch.
   
  //    (       ,      )
  self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
   
  //  storyboard,nil  [NSBundle mainBundle]
  UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
   
  //          
  UIViewController *vc = [storyboard instantiateInitialViewController];
 
  //             
  self.window.rootViewController = vc;
   
  //    
  [self.window makeKeyAndVisible];
   
  return YES;
}

3.xib 를 통 해 컨트롤 러 의 view(빈 항목)를 만 듭 니 다(먼저 xib 가 있어 야 합 니 다)
3.1 xib 주의 점:
1>xib 에는 컨트롤 러 의 view 를 설명 하 는 view 가 있어 야 합 니 다.컨트롤 러 의 view 속성 이 값 이 있어 야 하기 때 문 입 니 다.
2>xib 는 어떤 컨트롤 러 를 설명 할 지 지정 해 야 합 니 다.UIView 를 설명 할 필요 가 없습니다.xib 에 서 는 많은 UIView 를 설명 할 수 있 기 때문에 고정 적 으로 죽 을 수 없 지만 컨트롤 러 는 다 릅 니 다.하 나 는 컨트롤 러 만 설명 합 니 다.
3>xib 에 view 가 많 을 수 있 습 니 다.컨트롤 러 의 view 를 드래그 해 야 합 니 다.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  // Override point for customization after application launch.
   
  //     
  self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; 
   
  //   xib     
  ViewController *vc = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil]; 
  self.window.rootViewController = vc;
   
  [self.window makeKeyAndVisible];
    
  return YES;
}
3.2 xib 와 storyboard 의 차이 storyboard 는 컨트롤 러 의 view 를 지정 하 였 습 니 다.우리 가 관리 할 필요 가 없습니다.xib 는 우리 가 수 동 으로 관리 해 야 합 니 다.
이상 은 본 고의 모든 내용 입 니 다.iOS 컨트롤 러 를 쉽게 만 드 는 데 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기