博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
给UITextField左侧加一个小图标
阅读量:6692 次
发布时间:2019-06-25

本文共 1680 字,大约阅读时间需要 5 分钟。

xcode 6.1

File-New-Project..

iOs-Application-Simple View Application

1、写一个自定义JSTextField类,继承UITextField,来重载原有的initWithFrame方法,以便以后可以重用。

1.1右键,弹的菜单New File...

1.2 iOS-Source-Cocoa Touch Class

1.3 在Class:中输入JSTextField(名字自取),让其继承UITextField:

1.4 Next =>Create 创建文件JSTextField.h JSTextField.m

1.5 点击JSTextField.h,输入方法:

代码:

-(id)initWithFrame:(CGRect)frame drawingLeft:(UIImageView*)icon;

1.6 打开JSTextField.m,实现initWithFrame方法,并且overwrite方法leftViewRectForBounds:,让图标右侧可以有点间距:

代码:

#import "JSTextField.h"@implementation JSTextField-(id)initWithFrame:(CGRect)frame drawingLeft:(UIImageView *)icon{    self = [super initWithFrame:frame];    if (self) {        self.leftView = icon;        self.leftViewMode = UITextFieldViewModeAlways;    }    return self;}-(CGRect)leftViewRectForBounds:(CGRect)bounds{    CGRect iconRect = [super leftViewRectForBounds:bounds];    iconRect.origin.x += 10;// 右偏10    return iconRect;}@end

2、使用刚才的JSTextField:

代码:

UIImage *usernameImage = [UIImage imageNamed:@"20.gif"];    UIImageView *usernameIcon = [[UIImageView alloc] initWithImage:usernameImage];    usernameIcon.frame = CGRectMake(0, 0, 20, 20);        self.textview = [[JSTextField alloc] initWithFrame:CGRectMake(0, 200, 240, 30) drawingLeft:usernameIcon];    self.textview.placeholder = @"用户名";    self.textview.borderStyle = UITextBorderStyleRoundedRect;    self.textview.clearButtonMode = UITextFieldViewModeWhileEditing;    //[self.textview setKeyboardType:UIKeyboardTypeNumbersAndPunctuation];    [self.view addSubview:self.textview];

textview的声明,在ViewController.h中:

代码:

@property (strong, nonatomic) IBOutlet JSTextField *textview;

效果如下:

转载于:https://www.cnblogs.com/jiduoduo/p/4050934.html

你可能感兴趣的文章
KVM虚拟化学习总结之简介
查看>>
php如何用window.open实现excel数据导出
查看>>
使用代理服务器环境下的XP自动更新
查看>>
我的友情链接
查看>>
apache虚拟主机的搭建
查看>>
【Linux系统安装】磁盘与分区的命名规则
查看>>
关于Android手势类GestureDetector类
查看>>
hadoop相关要点
查看>>
Cubieboard官方 GPIO驱动使用总结
查看>>
rman恢复数据库
查看>>
Struts2学习笔记(一)初步了解Struts2以及配置
查看>>
我的友情链接
查看>>
presto Resource Groups
查看>>
我的友情链接
查看>>
慢工出细活,Facebook点赞按钮设计中的门道
查看>>
思科路由器配置命令一览表
查看>>
Git 远程操作
查看>>
我的友情链接
查看>>
iostat命令解析
查看>>
linux Containers——试用lxc
查看>>