Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift textfield rightview自定义UIButton图像大小问题(安全字段切换)_Swift_Image_Uibutton_Uitextfield_Textfield - Fatal编程技术网

Swift textfield rightview自定义UIButton图像大小问题(安全字段切换)

Swift textfield rightview自定义UIButton图像大小问题(安全字段切换),swift,image,uibutton,uitextfield,textfield,Swift,Image,Uibutton,Uitextfield,Textfield,我有一个自定义按钮,它可以作为一个安全的文本切换按钮-在较大的iPhone上,图像大小可以,但在较小的iPhone 8、iPhone 7等上,图像太大,请参见下文 我尝试过添加约束和修改按钮的CGrect,但奇怪的是,这对图像的大小没有影响 我尝试了更小的图像大小,但图像太小了。对于不同的设备大小,我需要不同的图像吗?或者在代码中是否有解决方法 谢谢 为x1、x2和x3创建正确的资产修复了该问题 let button = UIButton(type: .custom) //let b

我有一个自定义按钮,它可以作为一个安全的文本切换按钮-在较大的iPhone上,图像大小可以,但在较小的iPhone 8、iPhone 7等上,图像太大,请参见下文

我尝试过添加约束和修改按钮的CGrect,但奇怪的是,这对图像的大小没有影响

我尝试了更小的图像大小,但图像太小了。对于不同的设备大小,我需要不同的图像吗?或者在代码中是否有解决方法

谢谢


为x1、x2和x3创建正确的资产修复了该问题

let button = UIButton(type: .custom)
    //let button = UIButton(frame: CGRect(x: 0, y: 0, width: 50, height: self.frame.height))
    setPasswordToggleImage(button)
    button.imageEdgeInsets = UIEdgeInsets(top: 0, left: -10, bottom: 0, right: 0)
    
    // Debug
    //button.backgroundColor = .blue
    //button.frame = CGRect(x: CGFloat(self.frame.size.width - 25), y: CGFloat(5), width: CGFloat(25), height: CGFloat(25))
    button.addTarget(self, action: #selector(self.togglePasswordView), for: .touchUpInside)
    self.rightView = button
    self.rightViewMode = .always
    button.alpha = 0.4