`
fosa0989
  • 浏览: 108529 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

实现键盘弹出后视图跟随键盘一起上下移动

 
阅读更多

在.h中实现代码:

@interface ShowTextfieldUnderKeyboardViewController : UIViewController <UITextViewDelegate>{

IBOutlet UITextView *myTextView;
IBOutlet UIScrollView *myScrollView;
}

@property(nonatomic,retain) UITextView *myTextView;
@property(nonatomic,retain) UIScrollView *myScrollView;
-(IBAction)Click;
@end

注意添加<UITextViewDelegate>协议。

在.m中实现代码:

#import “ShowTextfieldUnderKeyboardViewController.h”

@implementation ShowTextfieldUnderKeyboardViewController
@synthesize myTextView,myScrollView;

- (void)viewDidLoad {
[self.myScrollView setFrame:CGRectMake(0, 0, 320, 480)];
[myScrollView setContentSize:CGSizeMake(320, 481)];
myTextView.text = @”Please input:”;
myTextView.delegate = self;
}

-(void)Click{
[myTextView resignFirstResponder];
}

-(void)textViewDidBeginEditing:(UITextView *)textView
{
[UIView beginAnimations:@"showKeyboardAnimation" context:nil];
[UIView setAnimationDuration:0.30];
self.view.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y- 100, self.view.frame.size.width, self.view.frame.size.height);
[UIView commitAnimations];
}
- (void)textViewDidChange:(UITextView *)textView{

}
- (void)textViewDidEndEditing:(UITextView *)textView{
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.30];
CGRect rect = self.view.frame;
rect.origin.y += 100;
self.view.frame = rect;
[UIView commitAnimations];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}

- (void)viewDidUnload {
}

- (void)dealloc {
[myTextView release];
[super dealloc];
}
@end

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics