效果圖

為 textField 添加左側圖片.png
實現方法
//創(chuàng)建左側視圖
UIImage *im = [UIImage imageNamed:@"icon"];
UIImageView *iv = [[UIImageView alloc] initWithImage:im];
UIView *lv = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 50, 200)];//寬度根據需求進行設置,高度必須大于 textField 的高度
lv.backgroundColor = [UIColor blueColor];
iv.center = lv.center;
[lv addSubview:iv];
//設置 textField 的左側視圖
//設置左側視圖的顯示模式
tf.leftViewMode = UITextFieldViewModeAlways;
tf.leftView = lv;
左側視圖屬性
@property(nonatomic) UITextFieldViewMode leftViewMode;// sets when the left view shows up. default is UITextFieldViewModeNever
typedef NS_ENUM(NSInteger, UITextFieldViewMode) {
UITextFieldViewModeNever,//不顯示左側視圖
UITextFieldViewModeWhileEditing,//只在編輯時顯示左側視圖
UITextFieldViewModeUnlessEditing,//編輯時隱藏左側視圖
UITextFieldViewModeAlways//總是顯示左側視圖
};
代碼示例
UITextField *tf = [[UITextField alloc] init];
tf.borderStyle = UITextBorderStyleRoundedRect;
tf.placeholder = @"請輸入手機號";
[self.view addSubview:tf];
tf.center = self.view.center;
UIImage *im = [UIImage imageNamed:@"icon"];
UIImageView *iv = [[UIImageView alloc] initWithImage:im];
UIView *lv = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 50, 200)];
lv.backgroundColor = [UIColor blueColor];
iv.center = lv.center;
[lv addSubview:iv];
tf.leftViewMode = UITextFieldViewModeAlways;
tf.leftView = lv;
[tf sizeToFit];