这就是我想做的事情
当用户点击图片时,我会显示"是"图片,当他再次点击时,我删除了那个"是"图像。
如何在按钮上方添加该图像? 我应该实现自定义按钮吗? (如果是,我如何将图像添加到该自定义按钮)
我不应该从第一个位置使用按钮吗? (如果是,我应该使用什么?)
非常感谢您的帮助
我看其他问题,但听起来像他们想要为图像设置自定义背景,如添加星星但我想保留按钮的文本并添加该图像,我可以隐藏它并在动作上显示对于那个按钮
答案 0 :(得分:1)
我认为更好的解决方案是创建自定义UIButton。
import UIKit
@IBDesignable
class CustomButton: UIButton {
var rightImageView:UIImageView?
@IBInspectable var rightImage:UIImage? {
didSet {
updateImage()
}
}
override init(frame: CGRect) {
super.init(frame: frame)
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)!
createImageViewIfNeeded()
}
private func updateImage() {
if rightImage != nil && rightImageView != nil {
rightImageView!.image = rightImage!
}
}
private func createImageViewIfNeeded() {
if rightImageView == nil {
let rightImageWidth:CGFloat = 30.0
let imageViewFrame = CGRect(x: self.frame.width - rightImageWidth, y: 0, width: rightImageWidth, height: self.frame.height)
rightImageView = UIImageView(frame: imageViewFrame)
rightImageView!.contentMode = UIViewContentMode.ScaleAspectFit
self.addSubview(rightImageView!)
}
}
}
答案 1 :(得分:-1)
您可以在UIImageView
下方设置UIButton
,然后为UserInteractionEnabled
激活UIImageView
,添加UITapGestureRecognizer
来处理与UIImageView
的互动{1}}并IBAction
UITapGestureRecognizer
UIViewController
UIImageView
,UIButton
每次点击def getHeightValue (x):
return x['height']
def containsHeight (x):
return 'height' in x
heights = map(getHeightValue, filter(containsHeight, people))
时都会调用该方法,在内部你可以隐藏/取消隐藏{ {1}}如您所愿。
这只是一种解决问题的方法,还有更多。
我希望这对你有所帮助。