Swift: круглый UIButton с размытым фоном

Я хочу сделать круглый UIButton, но с эффектом легкого размытия с яркостью в качестве фона.

Пока у меня есть закругленный UIButton, но код, который я нашел в Интернете (я новичок в разработке iOS, поэтому не очень понимаю, как работает размытие и т. д.), чтобы добавить размытие, просто помещает его как всю рамку кнопки, по сути, кнопка снова выглядит квадратной.

Я также пытался добавить представление, затем UIButton, а затем эффект размытия и применил код угла Радиуса к этому представлению, но это также не сработало.

Вот что я пробовал:

    shortcutButton.layer.cornerRadius = 0.5 * shortcutButton.bounds.size.width // add the round corners in proportion to the button size

    let blur = UIVisualEffectView(effect: UIBlurEffect(style:
        UIBlurEffectStyle.Light))
    blur.frame = shortcutButton.bounds
    blur.userInteractionEnabled = false //This allows touches to forward to the button.
    shortcutButton.insertSubview(blur, atIndex: 0)

person Rs2845    schedule 02.01.2016    source источник


Ответы (1)


Добавьте следующие две строки кода в свой проект, прежде чем добавлять подпредставление:

blur.layer.cornerRadius = 0.5 * shortcutButton.bounds.size.width
blur.clipsToBounds = true

Наслаждаться! :)

person Joshua    schedule 02.01.2016
comment
Удивительный! Спасибо за вашу помощь. Думаю, теперь я понял :) Как насчет того, чтобы сделать размытие более ярким? - person Rs2845; 03.01.2016