[iOSアプリ開発][Xcode 8.0][Swift 3.0] ボタンを角丸にする

私のアプリがショボく見えるのは、やはりデザインが良くないからだと思う。

そこで少しでもマシにするために、まずボタンを装飾することにした。

やったのは、以下のページを参考に、ボタンを角丸にすることだ。

Storyboard上だけでUIButtonを角丸に!カスタムクラスで設定項目を拡張する! | イリテク
https://iritec.jp/web_service/9167/

最新の Xcode、Swift では上記サイトのコードそのままでは動かないので、修正が必要だった。以下にその方法を公開する。

(1)Main.storyboard に Button を追加する。

(2)File > New > File > iOS > Source > Swift File を選んで、Next。Button_Custom.swift とでも名前を付けて Create。

(3)Project navigator > [プロジェクト名] > Button_Custom.swift を選択。以下のコードを記入する。

import UIKit

@IBDesignable
class Button_Custom: UIButton {
    
    @IBInspectable var textColor: UIColor?
    
    @IBInspectable var cornerRadius: CGFloat = 0 {
        didSet {
            layer.cornerRadius = cornerRadius
        }
    }
    
    @IBInspectable var borderWidth: CGFloat = 0 {
        didSet {
            layer.borderWidth = borderWidth
        }
    }
    
    @IBInspectable var borderColor: UIColor = UIColor.clear {
        didSet {
            layer.borderColor = borderColor.cgColor
        }
    }
}

(4)Project navigator で Main.storyboard を選択。1で作った Button を選択。

(5)Identity inspector > Custom Class > Class > Button_Custom を選択。

(6)Attributes inspector > Button Custom ができあがっているので、Corner Radius で角丸の半径を調整できる。