我有一个集合视图,其中包含每个单元格中的图像视图和按钮,当我点击imageView didSelectItemAtIndexPath时,点击它不调用的按钮
这是代码
id
答案 0 :(得分:3)
didSelectItemAtIndexPath
不会打电话,所以你必须按照我下面提到的那样做:
当你在cellForItemAtIndexPath
创建一个按钮时,只需用这样的方式添加标签:
button.tag = indexPath.row
之后你必须添加按下按钮时调用的动作:
button.addTarget(self, action: "buttonTapAction:", forControlEvents: UIControlEvents.TouchUpInside)
之后当您按下按钮进入单元格时,您可以调用此方法:
func buttonTapAction(sender:UIButton!)
{
var button : UIButton = sender as! UIButton
var row : Int = button.tag
println(row)
}
因此,您可以获得indexPath
的价值。
有关更多参考,您可以参考使用tableview的THIS示例,但它可以帮助您更好地理解。
答案 1 :(得分:1)
尝试替换它:
button.addTarget(self, action: "showNotice", forControlEvents: UIControlEvents.TouchUpInside)
用这个:
button.addTarget(self, action: "showNotice:", forControlEvents: UIControlEvents.TouchUpInside)