将图像添加到遮罩层(CALayer)内的按钮?

时间:2016-03-04 06:49:51

标签: ios swift

我在CALayer中有一个按钮,无法找到向其添加图像的方法。

这是我的代码。按钮出现,但....

        let button1 = UIButton(type: UIButtonType.Custom) as UIButton
        button1.frame = CGRectMake(36, 100 , 36, 36)
        button1.addTarget(self, action: "Action:", forControlEvents: UIControlEvents.TouchUpInside)

         // Create your mask layer

        let maskLayer: CALayer = CALayer()
        maskLayer.frame = CGRectMake(0, 0, 250, 150)
        maskLayer.backgroundColor = UIColor.clearColor().CGColor
        maskLayer.addSublayer(button1.layer)
        maskLayer.contents = (UIImage(named: "RedDot.png")!.CGImage as! AnyObject)

        // Apply the mask to your uiview layer

        infoWindow.layer.addSublayer(maskLayer)



        return infoWindow

1 个答案:

答案 0 :(得分:0)

由于您尝试添加按钮的图层作为子图层设置图像到按钮不起作用。一种方法是设置图层内容,如下所示,

    button1.layer.contents = (UIImage(named: "image.png")!.CGImage as! AnyObject)

通过这种方式,您无法设置其他属性,如按下状态等。