2009-08-03 3 views
1

OK 많은 성공을하지 주문하려고, 나는 다음과 같은 내 아이폰 앱에서 화면을 키보드가 사라지면 키보드를 가지고있는 노트 편집 화면을 모달 식으로 표시하고 싶습니다.하지만 화면에 다시 애니메이션을 적용하고 싶습니다.내장 UIAnimations,

지금은 모든 것을 한 번에 움직이게합니다. 키보드는 사라지지 않고 모양이 바뀌고 키보드 아래에있는 새보기가 모달 애니메이트됩니다. 전체 효과가 적절하게 기능하지만 약간은 잔인합니다. 화면에서 모달 뷰를 팝업하기 전에 키보드를 밀면 더 부드럽게 느껴질 것입니다. 나는 다른 응용 프로그램이 내가 원하는 것을 수행하는 것을 보았습니다 (예를 들어, 사물). 가능하다는 것을 알고 있습니다.

전이가 한꺼번에 진행되는 것이 아니라 개별적으로 일어나는 모든 것을 올바른 방향으로 안내 할 수 있습니까?

편집 : 요청에 따라 다음은 내가 사용하고있는 코드 중 일부입니다. 불행하게도 목표 C에서 영어와 거의 똑같은 것을 읽습니다.

UITableViewController* tableViewController = (UITableViewController*)tableView.dataSource; 

    AddNotesViewController* addNotesViewController = [[AddNotesViewController alloc] initWithWine:[self myWine]]; 

    UINavigationController* addNotesNavController = [[[UINavigationController alloc] initWithRootViewController:addNotesViewController] autorelease]; 

    // tell the name override cell to resign if they need to 
    [(NewWineViewController*)tableView.dataSource resignNameCell]; 

    //I'd like the animation caused by the resign to complete before proceeding. 

    [tableViewController.navigationController presentModalViewController:addNotesNavController animated:YES]; 
+0

지금 가지고있는 코드 스 니펫을 게시 할 수 있습니까? –

답변

3

나는이 작업을해야 생각 :

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    UITextField *textField = // the field that the keyboard is up for 
    [textField resignFirstResponder]; 

    NSTimeInterval delay = 2.0; // i.e., until keyboard has disappeared 
    [self performSelector: @selector(transitionToEditNotesScreen) withObject: nil afterDelay: delay]; 
} 

- (void) transitionToEditNotesScreen 
{ 
    // the code you have above to bring on the modal view controller   
} 

이 메모 편집 화면의 컨트롤러에 다음 코드를 추가합니다. 모달보기가 완전히 나타난 후에 키보드를 다시 애니메이션으로 만들려면 viewDidAppear에 배치하십시오. 그렇지 않으면 동일한 코드를 viewDidLoad 또는 viewWillAppear에 넣습니다.

- (void) viewDidAppear: (BOOL) animated 
{ 
    UITextField *textField = // the field you want the keyboard to be up for 
    [textField becomeFirstResponder]; 
} 
+0

잘 돌아갔습니다. 고마워요. – mmc

+0

그냥 호기심 - 당신은 viewDidAppear 또는 viewWillAppear와 함께 갔습니까? – Amagrammer