我有一个文本字段,其中的值填充了我从服务器获取的字符串。我想在文本字段中设置一个图标,只是为了向用户显示文本字段实际上不是标签,但可以进行编辑。我经历了其他问题,但只找到了在leftViewMode或RightViewMode上设置图标的答案。我怎样才能实现它?
_titleLabel.delegate = self;
UIImageView *imgView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"edit_Canvas_name"]];
imgView.contentMode = UIViewContentModeScaleAspectFit;
[_titleLabel setRightViewMode:UITextFieldViewModeAlways];
[_titleLabel setRightView:imgView];
我希望图像在“触摸 - 绘图”中的g之后。
答案 0 :(得分:1)
编写一个返回UITextField文本宽度的方法。然后在此之后放置图像。方法将是这样的,
- (float)textWidthOf:(UITextField *)textfield {
CGSize textSize = [textfield.text sizeWithAttributes:@{NSFontAttributeName : textfield.font}];
return textSize.width;
}
答案 1 :(得分:-1)
在文本字段中添加按钮并根据该按钮设置框架或约束,这样您就可以在“触摸 - 绘图”中获得“g”旁边的按钮。
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
[btn addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
btn.frame = CGRectMake(self.yourTextField.bounds.size.width - 50, 5, 25, 25);
[btn setBackgroundImage:[UIImage imageNamed:@"yourImage.png"] forState:UIControlStateNormal];
[self.yourTextField addSubview:btn];