我有一个目标操作,当按下按钮时,我验证UITextFields:
// Get the text from the UITextField Nsstring *nameStr = _name.text; _name.rightView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"error.png"]]; [self.view addSubview:_name]; if (nameStr.length == 0) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Invalid Name" message:@"You must enter a name." delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alert show]; }
我的UITextFields添加到viewDidLoad中的视图,如下所示:
[self.view addSubview:_name];
如何使右视图UIImageView出现?
解决方法
你确定你没有丢失UITextField框架吗?你正在设置rightviewmode吗?
这是我刚才写的一个例子,似乎工作正常.
UITextField *rightField = [[UITextField alloc] initWithFrame:CGRectMake(0,140,50)]; rightField.backgroundColor = [UIColor redColor]; // For testing purpose rightField.rightviewmode = UITextFieldviewmodeAlways;// Set rightview mode UIImageView *rightimageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Tick_white_color"]]; rightField.rightView = rightimageView; // Set right view as image view [self.view addSubview:rightField];
结果如下: