pushViewController:animated:
- 새로운 뷰 컨트롤러를 스택에 추가한다.
추가된 뷰 컨트롤러가 화면에 나타난다.
popViewControllerAnimated:
- 현재 뷰 컨트롤러를 제거하고, 이전에 존재하던 뷰 컨트롤러가 전면에 나타난다.
popToRootViewControllerAnimated:
- 루트 뷰 컨트롤러를 제외한 스택의 모든 뷰 컨트롤러를 제거한다.
루트 뷰 컨트롤러가 화면에 나타난다.
popToViewController:animated:
- 지정한 뷰 컨트롤러를 만날 때까지 스택의 뷰 컨트롤러들을 제거한다.
원하는 상위 단계로 곧바로 이동하고 싶을 때 사용된다.
항목을 눌렀을 때 하위 뷰 컨트롤러를 보여주는 부분
toPush.title = @"하위뷰";
[self.navigationController pushViewController:toPush animated:YES];
>내비게인션 아이템 (UINavigationItem) 객체
내비게이션 바에 푸시 또는 팝하는 대상
푸시와 팝은 다음과 같이 실행
1. 새로운 뷰 컨트롤러 A 를 화면에 보여주기 위해서 내비게이션 컨트롤러에 푸시
2. 내비게이션 바를 새로운 뷰 컨트롤러 A 의 내용으로 업데이트 하기 위해서 A 의
내비게이션 아이템 객체를 내비게이션 바에 푸시한다.
3. A 에서 이전 뷰 컨트롤러로 가는 버튼을 누르면 내비게이션 컨트롤러에서 팝된다.
4. 새로운 뷰 컨트롤러에 맞게 내비게이션 바를 갱신하기 위해서 팝한다.
내비게이션 아이템은 좌측, 중앙, 우측에 내비게이션 아이템을 담을 수 있다.
내비게이션 바를 꾸밀 때
self.navigationItem.prompt = @"상단에 문구가 들어가요";
UIBarButtonItem* toAdd = [[UIBarBUttonItem alloc] initWithTitle:@"항목추가" style:UIBarButtonItemStylePlain
target:self action@selector(onAdd)];
self.navigationItem.rightBarButtonItem = toAdd;
// 버튼이 눌렸을 때 self 의 onAdd 메서드가 호출되도록 인자로 설정
initWithBarButtonSystemItem:target:action:
- 메서드를 이용하면 시스템에 미리 만들어 놓은 버튼도 쓸 수 있다.
UIBarButtonSystemItemCamera( 카메라 아이콘)
[self editButtonItem] // 편집 버턴을 사용할 수 있다.
일반 UIView 를 버튼으로 추가하는 방법도 알아보자.
UISwitch *switchView = [[UISwitch alloc] initWithFrame:CGRectMake(0,0,70,30)];
UIBarButtonItem *toAdd = [[UIBarButtonItem alloc] initWithCustomView:switchView];
'개발 > App Developer' 카테고리의 다른 글
애플리케이션 델리게이트 이벤트 (0) | 2010.08.29 |
---|---|
애플리케이션의 흐름 (0) | 2010.08.29 |
뷰 컨트롤러의 재정의 메소드 중요 몇가지 (0) | 2010.08.29 |
뷰 이벤트의 터치 이벤트 (0) | 2010.08.29 |
UIEvent 메소드 (0) | 2010.08.29 |