resigngetfirstresponderr 这个事件就是触发键盘隐藏吗

resignFirstResponder 这个事件就是触发键盘隐藏吗_百度知道
resignFirstResponder 这个事件就是触发键盘隐藏吗
提问者采纳
  这个方法是取消第一响应者状态的。如果对textfield使用的话,那么调用这个方法,textfield的第一响应者状态就会取消,然后键盘就消失了。  
资深电脑人
其他类似问题
为您推荐:
键盘的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁用心创造滤镜
扫码下载App
汇聚2000万达人的兴趣社区下载即送20张免费照片冲印
扫码下载App
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
All the splendor in the world is not worth a good friend!!
Hello my friend!!
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(1701)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_095069',
blogTitle:'获得iPad虚拟键盘隐藏事件及UITextFiled延伸',
blogAbstract:'
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:1,
permalink:'blog/static/',
commentCount:1,
mainCommentCount:1,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'All the splendor in the world is not worth a good friend!!\r\nHello my friend!! ',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}[iOS] UITextField隐藏软键盘心得(隐藏自身软键盘、点击Return自动转到下个文本框、轻触背景隐藏软键盘)(转)
编辑:www.fx114.net
本篇文章主要介绍了"[iOS] UITextField隐藏软键盘心得(隐藏自身软键盘、点击Return自动转到下个文本框、轻触背景隐藏软键盘)(转) ",主要涉及到[iOS] UITextField隐藏软键盘心得(隐藏自身软键盘、点击Return自动转到下个文本框、轻触背景隐藏软键盘)(转) 方面的内容,对于[iOS] UITextField隐藏软键盘心得(隐藏自身软键盘、点击Return自动转到下个文本框、轻触背景隐藏软键盘)(转) 感兴趣的同学可以参考一下。
[iOS] UITextField隐藏软键盘心得(隐藏自身软键盘、点击Return自动转到下个文本框、轻触背景隐藏软键盘)
&  关于隐藏软键盘,网上的办法良莠不齐,大多是通过实现UITextFieldDelegate来隐藏软键盘,该方法代码较多,且在文本框很多的时不好处理。我经过搜索与摸索,找到了最佳的处理办法。
一、隐藏自身软键盘
  当对于有多个UITextField控件都想通过点击&Return&来隐藏自身软键盘的情况,这时的最好办法是使用Did End on Exit事件。在点击软键盘右下角的&Return&按钮后,会触发该事件。  该事件有一个sender参数表示当前文本框,这样便可以编写一个通用的事件处理方法(.m文件)&&
- (IBAction)TextField_DidEndOnExit:(id)sender {
// 隐藏键盘.
[sender resignFirstResponder];}
&
  然后在.h文件中填写该方法的声明&&
- (IBAction)TextField_DidEndOnExit:(id)
&
  回到storyboard,并按command+option+enter打开辅助窗口,使辅助窗口显示.h文件。  选中一个UITextField控件,点击鼠标右键弹出面板,鼠标左键按住Did End on Exit事件旁边的圆圈,然后拖曳到右侧.h文件的TextField_DidEndOnExit方法上,便会建立好事件连接。  随后按照同样的做法,将其他UITextField控件的Did End on Exit事件也连接到TextField_DidEndOnExit方法。
  运行一下,可发现每个文本框的软键盘都可以通过点击&Return&来隐藏了。
二、点击Return自动转到下个文本框
  当页面中有很多个文本框时,如果每次都需要点文本框激活软键盘、输入后点击Return隐藏软键盘、再点击下一个文本框&&这样操作起来太繁琐了。  于是我们希望能够实现点击Return时能够自动转到下一个文本框。尤其是对于最后一个文本框,希望能够在点击Return时执行下一步操作。
  例如对于登录页面。它上面有 账号文本框(nameTextField)、密码文本框(passTextField)、登录按钮(loginButton)。  我们希望&&点击账号文本框软键盘的Return时跳转到密码文本框,点击密码文本框软键盘的Return时执行登录。  因为这两个文本框的功能不同,不能像上一节那样写一个TextField_DidEndOnExit做统一处理,而应该分别建立各自的事件处理方法。
  回到storyboard,右击账号文本框(nameTextField)弹出面板,按住Did End on Exit事件旁边的圆圈,然后拖曳到右侧.h文件的空白地方,此时会弹出一个对话框给方法命名。输入名称(nameTextField_DidEndOnExit)后回车确定,便自动生成了该事件方法。  随后按照同样的做法,为密码文本框(passTextField)的Did End on Exit事件连接方法(passTextField_DidEndOnExit)。  来到.m文件,填写具体代码&&
- (IBAction)nameTextField_DidEndOnExit:(id)sender {
// 将焦点移至下一个文本框.
[self.passTextField becomeFirstResponder];}- (IBAction)passTextField_DidEndOnExit:(id)sender {
// 隐藏键盘.
[sender resignFirstResponder];
// 触发登陆按钮的点击事件.
[self.loginButton sendActionsForControlEvents:UIControlEventTouchUpInside];}
&
  对于账号文本框转密码文本框,不需要隐藏软键盘,只需要调用becomeFirstResponder激活新的文本框就行了。  对于密码文本框Return后执行登录。因为不再需要显示软键盘,所以还是得调用resignFirstResponder隐藏软键盘,然后触发登录按钮(loginButton)的UIControlEventTouchUpInside事件进行登录。
  运行一下,可发现已经达到我们希望的效果了。点击账号文本框软键盘的Return时跳转到密码文本框,点击密码文本框软键盘的Return时执行登录。  怎么都是&Return&,转换文本框与执行登录明明是不同的功能?  于是将账号文本框的Return Key属性设为&Next&,将密码文本框的Return Key属性设为&Done&,使界面与功能一致。
三、轻触背景隐藏软键盘
  只能通过Return关闭软键盘太不灵活了,应该提供轻触背景隐藏软键盘的功能。
  在storyboard,点击背景View,将它的Custom Class设置为UIControl,这样才会出现Touch Down事件。  右击背景View弹出面板,按住Touch Down事件旁边的圆圈,然后拖曳到右侧.h文件的空白地方建立该事件的处理方法。  来到.m文件,填写具体代码&&
- (IBAction)View_TouchDown:(id)sender {
// 发送resignFirstResponder.
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];}
&
本文标题:
本页链接:resignFirstResponder 这个事件就是触发键盘隐藏吗_百度知道
resignFirstResponder 这个事件就是触发键盘隐藏吗
提问者采纳
您好,是这样的:1、这个方法是取消第一响应者状态的。如果对textfield使用的话,那么调用这个方法,textfield的第一响应者状态就会取消,然后键盘就消失了。 2、不知道你令其他一个控件becomeFirstResponder,会不会取消键盘?或者你隐藏一个textfield,然后想实现你的要求的时候,让这个隐藏的textfield调用becomeFirstResponder。纯属猜测,未实践。 3、取消第一响应者状态的 。
资深电脑人
其他类似问题
为您推荐:
键盘的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁UITextField和&UITextView输入完毕后隐藏键盘
UITextField 比较简单 他有个Did End On Exite
事件,写个函数链接上就OK
- (IBAction)textFieldDoneEditing:(id)sender
&&& [sender
resignFirstResponder];
还可以点击背景实现隐藏键盘
打开nib文件 把View 的Class 从UIView改为 UIControl
- (IBAction)backgroundTap:(id)sender
[UITextFieldName resignFirstResponder];
UIcontrol的Touch Down事件链到File’s Owner 选择 backgroundTap
UITextView没有相应的事件,方法比较多,都是总结别人的。
(1)如果你程序是有导航条的,可以在导航条上面加多一个Done的按钮,用来退出键盘,当然要先实UITextViewDelegate。
代码如下:
- (void)textViewDidBeginEditing:(UITextView *)textView
& UIBarButtonItem *done
&&&&&&&&&&&&&&&&
[[[UIBarButtonItem
alloc]&&&&&&&&&&&
&&&&&&&&&&&&&&&&&
initWithBarButtonSystemItem:UIBarButtonSystemItemDone
&&&&&&&&&&&&&&&&
target:self
&&&&&&&&&&&&&&&&
action:@selector(leaveEditMode)]
autorelease];&&&
&&&&&&&&&&&&&&&&&
self.navigationItem.rightBarButtonItem =
- (void)textViewDidEndEditing:(UITextView *)textView
self.navigationItem.rightBarButtonItem =&
- (void)leaveEditMode
[self.textView
resignFirstResponder];&&&
(2)如果你的textview里不用回车键,可以把回车键当做退出键盘的响应键。
#pragma mark - UITextView Delegate
Methods&&&
-(BOOL)textView:(UITextView *)textView
shouldChangeTextInRange:(NSRange)range replacementText:(NSString
&&& if ([text
isEqualToString:@"\n"])
resignFirstResponder];&&&
这样无论你是使用电脑键盘上的回车键还是使用弹出键盘里的return键都可以达到退出键盘的效果。
(3)还有你也可以自定义其他加载键盘上面用来退出,比如在弹出的键盘上面加一个view来放置退出键盘的Done按钮。
UIToolbar * topView = [[UIToolbar
alloc]initWithFrame:CGRectMake(0, 0, 320,
&&& [topView
setBarStyle:UIBarStyleBlack];&&&
UIBarButtonItem * helloButton = [[UIBarButtonItem
alloc]initWithTitle:@"Hello"&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&style:UIBarButtonItemStyleBordered
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
target:self
action:nil];&&&&&&&&&
UIBarButtonItem * btnSpace = [[UIBarButtonItem
initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
target:self
action:nil];&&&
UIBarButtonItem * doneButton = [[UIBarButtonItem
alloc]initWithTitle:@"Done"
&&&&&&&&&&&&&&&&&&&&&&&&&
&style:UIBarButtonItemStyleDone
&&&&&&&&&&&&&&&&&&&&&&&&&&
target:self
&&&&&&&&&&&&&&&&&&&&&&&&&&
action:@selector(dismissKeyBoard)];&&&
&&& NSArray *
buttonsArray = [NSArray
arrayWithObjects:helloButton,btnSpace,doneButton,nil];&&&
[doneButton
release];&&&
&&& [btnSpace
release];&&&
[helloButton
release];&&&
&&& [topView
setItems:buttonsArray];&&&
[tvTextView
setInputAccessoryView:topView];&&&
-(IBAction)dismissKeyBoard&&&
[tvTextView
resignFirstResponder];&&&
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 getfirstresponder 的文章

 

随机推荐