您的位置:首页 > 移动开发 > IOS开发

IOS-中英文键盘判断方法学习

2012-07-04 12:56 274 查看
- (void)keyboardWillChangeFrame:(NSNotification *)notification{
// if(!isDisplayFaceBox){
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_3_2
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
#endif
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_3_2
NSValue *keyboardBoundsValue = [[notification userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey];
#else
NSValue *keyboardBoundsValue = [[notification userInfo] objectForKey:UIKeyboardBoundsUserInfoKey];
#endif
CGRect keyboardBounds;
[keyboardBoundsValue getValue:&keyboardBounds];

if (keyboardBounds.size.height==252) {//处于汉文输入状态

textChosedBoxShow=YES;
if (keyBoardState==keyBoardKeepShow) {
if (lastKeyBoardHeight==252) {
return;
}
//TODO:让searchView 和 uitableView上移动 36
CGRect tblViewFrame=self.tableView.frame;
CGSize newSize=CGSizeMake(tblViewFrame.size.width, tblViewFrame.size.height-36);
tblViewFrame.size=newSize;
self.tableView.frame=tblViewFrame;

CGPoint searchCenter=self.searchView.center;
CGPoint newCenter=CGPointMake(searchCenter.x, searchCenter.y-36);
self.searchView.center=newCenter;
// UIView *landView= [self.view viewWithTag:MainViewTag];
// CGPoint oldCenter=landView.center;
// landView.center=CGPointMake(oldCenter.x, oldCenter.y-36);
}else if(keyBoardState ==keyBoardWillShow)
{
[self keyBoardShowOffsetY:252];

}else{
[self keyBoardHidden];
}
}else{
textChosedBoxShow=NO;//处于英文输入状态
if (keyBoardState==keyBoardKeepShow) {
if (lastKeyBoardHeight==216) {
return;
}
CGRect tblViewFrame=self.tableView.frame;
CGSize newSize=CGSizeMake(tblViewFrame.size.width, tblViewFrame.size.height+36);
tblViewFrame.size=newSize;
self.tableView.frame=tblViewFrame;

CGPoint searchCenter=self.searchView.center;
CGPoint newCenter=CGPointMake(searchCenter.x, searchCenter.y+36);
self.searchView.center=newCenter;
}else if(keyBoardState ==keyBoardWillShow)
{
[self keyBoardShowOffsetY:216];
}else{
[self keyBoardHidden];
}
}
lastKeyBoardHeight=keyboardBounds.size.height;
NSLog(@"%@",NSStringFromCGRect(keyboardBounds));

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_3_2
}
#endif
// }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: