打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ios 键盘右上角添加完成按钮

在调出键盘后,我们通常希望在键盘的右上角添加一个完成的按钮,也就是给键盘添加一个附属的视图。

我们知道,在uitextField或uitextView获得焦点的时候,键盘弹出。要在键盘的右上角添加完成按钮,其实就是通过设置它们的inputAccessoryView属性实现的:

先看看现实方法:

    UIToolbar *bar = [[UIToolbaralloc]initWithFrame:CGRectMake(0,0,SCREEN_WIDTH,44)];

    UIButton *button = [[UIButtonalloc]initWithFrame:CGRectMake(SCREEN_WIDTH -60, 7,50,30)];

    [button setTitle:@'完成'forState:UIControlStateNormal];

    [button setTitleColor:COLOR_ORANGE_LIGHTforState:UIControlStateNormal];

    [bar addSubview:button];

    _textField.inputAccessoryView = bar;

效果差不多这样子:



当然如果你觉得每次时候textField都需要添加这段代码太麻烦,有没有一劳永逸的办法:

答案是有,就是继承uitextField,重写它的drawRect:

- (void)drawRect:(CGRect)rect {

    [superdrawRect:rect];

    UIToolbar *bar = [[UIToolbaralloc]initWithFrame:CGRectMake(0,0,SCREEN_WIDTH,44)];

    UIButton *button = [[UIButtonalloc]initWithFrame:CGRectMake(SCREEN_WIDTH - 60, 7,50,30)];

    [button setTitle:@'完成'forState:UIControlStateNormal];

    [button setTitleColor:[UIColorredColor]forState:UIControlStateNormal];

    button.layer.borderColor = [UIColorredColor].CGColor;

    button.layer.borderWidth =1;

    button.layer.cornerRadius =3;

    [bar addSubview:button];

    self.inputAccessoryView = bar;

    

    [button addTarget:selfaction:@selector(print)forControlEvents:UIControlEventTouchUpInside];

}


- (void) print {

    NSLog(@'button click');

}


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
iPhone开发技巧之私有API(3)
深度定制UIButton按钮
UIScrollView基本使用。为其它添加多个button ||
IOS UIButton用法详解
UIScrollView 导航滚动效果,带下划线滚动
关于UIButton的一些新认识
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服