テキストフィールドを隠蔽しないようにキーボードが表示されているため、ブックの例を使ってビューをスライドさせていました。キーボードが隠れた後にiPhoneの表示がリセットされない
キーボードを隠すためにバックグラウンドをクリックすると、ビューがスライドし、スライドしないという事実を除いてすべてが機能します。キーボードは隠れていますが、ビューは上にシフトしたままです。キーボードを隠すためにリターンキーを使用すると、すべて正常に動作します。以下は、私のコードです:
- (void)keyboardWillShow:(NSNotification *)notif {
NSDictionary* info = [notif userInfo];
NSValue* aValue = [info objectForKey:
UIKeyboardBoundsUserInfoKey];
CGSize keyboardSize = [aValue CGRectValue].size;
float bottomPoint = (password.frame.origin.y+
password.frame.size.height+10);
scrollAmount = keyboardSize.height -
(self.view.frame.size.height- bottomPoint);
if (scrollAmount > 0) {
moveViewUp = YES;
[self scrollTheView:YES];
}
else
moveViewUp = NO;
}
- (void)scrollTheView:(BOOL)movedUp {
[UIControl beginAnimations:nil context:NULL];
[UIControl setAnimationDuration:0.3];
CGRect rect = self.view.frame;
if (movedUp){
rect.origin.y -= scrollAmount;
}
else {
rect.origin.y += scrollAmount;
}
self.view.frame = rect;
[UIControl commitAnimations];
}
-(BOOL)textFieldShouldReturn:(UITextField *) theTextField {
[theTextField resignFirstResponder];
if (moveViewUp) [self scrollTheView:NO];
return YES;
}
私はもう一度キーボード
を非表示にするには、背景をタッチすると、キーボードの後にダウンアニメーションどのようなビューが隠されている理由を任意のヘルプは高く評価され考え出すタフな時間を持っています。
背景をクリックすると(完了していない)、textFieldShouldReturnメソッドが発生することを確認しましたか? – DerekH
ええ、私はこれを早めにチェックしなければなりません。私のtextFieldShouldReturnメソッドは起動しません。なぜどんなアイデア? – mike