UIViewController 의 shouldAutorotateToInterfaceOrientation 함수에서 가로보기 모드 또는 세로보기 모드를 고정시킬 수가 있다.
UIViewController 의 shouldAutorotateToInterfaceOrientation 함수의 기본 내용은 다음과 같다.
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
위 함수는 기본적으로 주석처리 상태로 작성되는데, 주석처리된 상태로 놔두든 주석을 풀든 기기를 돌리더라도 항상 세로보기 상태로 유지된다.
(기기를 돌리기 위해서는 Home 또는 End 키를 사용한다.)
이 함수의 추석을 풀고 내용을 다음과 같이 수정하면 가로보기 모드로 고정시킬 수가 있다.
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation >= UIInterfaceOrientationLandscapeLeft);
}
Home 또는 End 키를 눌러서 아무기 기기를 돌리더라도 가로보기 모드가 세로보기 모드로 변경되지 않는다.
또한 다음과 같이 수정하면 세로보기 모드(기본모드)로 고정시킬 수가 있다.
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation <= UIInterfaceOrientationPortraitUpsideDown);
}
UIInterfaceOrientation 열거형 변수는 다음과 같은 순서대로 정의되어 있기 때문이다.
typedef enum {
UIInterfaceOrientationPortrait = UIDeviceOrientationPortrait,
UIInterfaceOrientationPortraitUpsideDown = UIDeviceOrientationPortraitUpsideDown,
UIInterfaceOrientationLandscapeLeft = UIDeviceOrientationLandscapeLeft,
UIInterfaceOrientationLandscapeRight = UIDeviceOrientationLandscapeRight
} UIInterfaceOrientation;
기기의 방향을 변경함에 따라서 화면의 보기모드를 변경하기 위해서는 shouldAutorotateToInterfaceOrientation 함수가 항상 YES 를 리턴하도록 변경한 다음
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return YES;
}
willRotateToInterfaceOrientation 함수를 오버라이드하여 UIViewController 하위의 뷰들에 대한 크기 조정 및 위치 조정을 위한 코드를 작성한다.
출처 : http://iwoohaha.tistory.com/145
UIViewController 의 shouldAutorotateToInterfaceOrientation 함수의 기본 내용은 다음과 같다.
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
위 함수는 기본적으로 주석처리 상태로 작성되는데, 주석처리된 상태로 놔두든 주석을 풀든 기기를 돌리더라도 항상 세로보기 상태로 유지된다.
(기기를 돌리기 위해서는 Home 또는 End 키를 사용한다.)
이 함수의 추석을 풀고 내용을 다음과 같이 수정하면 가로보기 모드로 고정시킬 수가 있다.
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation >= UIInterfaceOrientationLandscapeLeft);
}
Home 또는 End 키를 눌러서 아무기 기기를 돌리더라도 가로보기 모드가 세로보기 모드로 변경되지 않는다.
또한 다음과 같이 수정하면 세로보기 모드(기본모드)로 고정시킬 수가 있다.
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation <= UIInterfaceOrientationPortraitUpsideDown);
}
UIInterfaceOrientation 열거형 변수는 다음과 같은 순서대로 정의되어 있기 때문이다.
typedef enum {
UIInterfaceOrientationPortrait = UIDeviceOrientationPortrait,
UIInterfaceOrientationPortraitUpsideDown = UIDeviceOrientationPortraitUpsideDown,
UIInterfaceOrientationLandscapeLeft = UIDeviceOrientationLandscapeLeft,
UIInterfaceOrientationLandscapeRight = UIDeviceOrientationLandscapeRight
} UIInterfaceOrientation;
기기의 방향을 변경함에 따라서 화면의 보기모드를 변경하기 위해서는 shouldAutorotateToInterfaceOrientation 함수가 항상 YES 를 리턴하도록 변경한 다음
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return YES;
}
willRotateToInterfaceOrientation 함수를 오버라이드하여 UIViewController 하위의 뷰들에 대한 크기 조정 및 위치 조정을 위한 코드를 작성한다.
출처 : http://iwoohaha.tistory.com/145
'프로그래밍 > iOS' 카테고리의 다른 글
iphone에서 http 사용하기 (get/post) - 소스코드는 퍼왔습니다. (0) | 2011.05.21 |
---|---|
카메라 연동 코드 (UIImagePickerController) (0) | 2011.05.21 |
전화 통화 후 다시 돌아오기 (0) | 2011.05.20 |
자동회전과 자동크기 조절 (0) | 2011.05.20 |
nate open api 아이폰, 아이패드(iOS) api입니다. (0) | 2011.05.18 |