在文本字段中放置图像时 CGRect 函数不起作用
CGRect function is not working while placing image in textfield
我正在尝试在文本字段中设置图像,为此我正在代码中创建一个图像视图,但是当我试图通过 CGRect(x:int, y:int, 调整它的宽度和高度时width:int, height:int) ,它没有被应用并且图像大小仍然是原始的。我看过很多关于将图像放在文本字段中的教程,并且所有教程都在使用 CGRect 并为他们工作,因为图像的大小得到了他们在 CGRect 中应用的内容,但对我来说不是。以下是我尝试使用的代码。图片也附上。文本字段样式为圆形(默认),图标大小为 50 像素。
UIViewController
导入 UIKit
class ViewController: UIViewController {
@IBOutlet weak var email: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
update()
// Do any additional setup after loading the view.
}
func update() {
email.leftViewMode = .always
let imageview = UIImageView()
let image = UIImage(named: "icon")
imageview.image = image
imageview.frame = CGRect(x: 15, y: 0, width: 50 , height: 50)
email.leftView = imageview
}
}
此外,我已经尝试将图像资源中的 'Render as' 更改为 'template',但仍然无法正常工作。
嘿,我试过以编程方式进行,它对我有用。在 iPad 个操场上快速起草。试试这个:
class Test: UIViewController {
let lable = UITextField()
let image = UIImage()
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = .white
lable.frame = CGRect(x: 200, y: 200, width: 300 , height: 50)
lable.backgroundColor = .black
update()
self.view.addSubview(lable)
}
func update() {
lable.leftViewMode = .always
let imageview = UIImageView()
let image = UIImage(systemName: "icloud")
imageview.image = image
imageview.frame = CGRect(x: 15, y: 0, width: 50 , height: 50)
lable.leftView = imageview
self.view.addSubview(imageview)
}
}
我正在尝试在文本字段中设置图像,为此我正在代码中创建一个图像视图,但是当我试图通过 CGRect(x:int, y:int, 调整它的宽度和高度时width:int, height:int) ,它没有被应用并且图像大小仍然是原始的。我看过很多关于将图像放在文本字段中的教程,并且所有教程都在使用 CGRect 并为他们工作,因为图像的大小得到了他们在 CGRect 中应用的内容,但对我来说不是。以下是我尝试使用的代码。图片也附上。文本字段样式为圆形(默认),图标大小为 50 像素。
UIViewController
导入 UIKit
class ViewController: UIViewController {
@IBOutlet weak var email: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
update()
// Do any additional setup after loading the view.
}
func update() {
email.leftViewMode = .always
let imageview = UIImageView()
let image = UIImage(named: "icon")
imageview.image = image
imageview.frame = CGRect(x: 15, y: 0, width: 50 , height: 50)
email.leftView = imageview
}
}
此外,我已经尝试将图像资源中的 'Render as' 更改为 'template',但仍然无法正常工作。
嘿,我试过以编程方式进行,它对我有用。在 iPad 个操场上快速起草。试试这个:
class Test: UIViewController {
let lable = UITextField()
let image = UIImage()
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = .white
lable.frame = CGRect(x: 200, y: 200, width: 300 , height: 50)
lable.backgroundColor = .black
update()
self.view.addSubview(lable)
}
func update() {
lable.leftViewMode = .always
let imageview = UIImageView()
let image = UIImage(systemName: "icloud")
imageview.image = image
imageview.frame = CGRect(x: 15, y: 0, width: 50 , height: 50)
lable.leftView = imageview
self.view.addSubview(imageview)
}
}