2010-02-06 88 views
0

我在表格視圖中有8個文本字段。我需要在縱向和橫向模式下將數據輸入到該文本字段中。一些文本字段是鍵盤的背面。我無法將數據輸入到該文本字段中。如何在縱向和橫向選擇表格視圖中的文本字段時從鍵盤向上移動?

我在肖像模式下完成了willShowKeyBoard通知的幫助,並且工作正常。但是,我已經應用到橫向模式但是它不能正常工作。如何向上移動表格視圖以在文本字段中輸入數據?

  • (無效)keyboardWillShow:(NSNotification *)通知符 {

    if ([NameField isFirstResponder] && myView.frame.origin.y >= 0) 
    {  
    
    } 
    else if([credentialField isFirstResponder] && myView.frame.origin.y >=0) 
    { 
    
    } 
    else if([specialityField isFirstResponder] && myView.frame.origin.y >=0) 
    { 
    
    } 
    else if([streetField isFirstResponder] && myView.frame.origin.y >=0) 
    { 
        [self setViewMovedUp:YES]; 
    } 
    else if([cityField isFirstResponder] && myView.frame.origin.y >=0) 
    { 
        [self setViewMovedUp:YES]; 
    } 
    else if([stateField isFirstResponder] && myView.frame.origin.y >=0) 
    { 
        [self setViewMovedUp:YES]; 
    } 
    else if([zipcodeField isFirstResponder] && myView.frame.origin.y >=0) 
    { 
        [self setViewMovedUp:YES]; 
    } 
    

}

- (無效)setViewMovedUp:(BOOL)movedUp { [UIView的beginAnimations :nil context:NULL]; [UIView setAnimationDuration:0.5]; //如果你想向上滑動視圖 CGRect rect = myView.frame; if(movedUp) {
rect.origin.y = rect.origin.y - kOFFSET_FOR_KEYBOARD1; rect.size.height = rect.size.height + kOFFSET_FOR_KEYBOARD1; } else { rect.origin.y = rect.origin.y + kOFFSET_FOR_KEYBOARD1; rect.size.height = rect.size.height - kOFFSET_FOR_KEYBOARD1; }

myView.frame=rect; 
[UIView commitAnimations]; 

}

回答

0

你應該用一個UIScrollView要做到這一點,那麼你可以將你的內容向上/向下。

相關問題