YSCheckBoxは簡単に使えるiOS用のswift製チェックボックスライブラリです。
ブラウザ標準のようなチェックボックスです。
- Podfileに
pod 'YSCheckBox', :git => 'https://github.com/sekies/YSCheckBox.git'
と追加します。 - pod install します。
- YSCheckBoxをインポートします。
import YSCheckBox
- 任意のUIViewContorollerで
YSCheckBoxViewControllerDelegate
プロトコルに準拠します。
class ViewController: UIViewController,YSCheckBoxViewControllerDelegate {
YSCheckBoxViewController
インスタンスを生成します。生成時にチェックボックスのラベルを配列で指定します。
let checkBox = YSCheckBoxViewController(labels: ["Orange","GrapeFruits","Banana"])
- delegateと各種デザインプロパティを設定します。必須となるのはdelegateのみです。
checkBox.delegate = self
checkBox.font = UIFont.systemFont(ofSize: 18)
checkBox.labelColor = UIColor(red: 0, green: 122 / 255, blue: 1, alpha: 1)
checkBox.labelMargin = 0
checkBox.lineWidth = 1
checkBox.checkBoxSelectedFillSize = 1
checkBox.checkBoxMargin = 6
checkBox.checkBoxCorner = 7
checkBox.checkBoxStroke = .lightGray
checkBox.checkBoxCheckStroke = .white
checkBox.checkBoxSelectedFill = UIColor(red: 0, green: 122 / 255, blue: 1, alpha: 1)
checkBox.checkBoxBGFill = UIColor(red: 0.95, green: 0.95, blue: 0.95, alpha: 1)
- 親UIViewControllerに生成したYSCheckBoxViewControllerをaddChildしコンテナとなるUIViewにYSCheckBoxViewControllerのviewをaddSubviewします。チェックボックスの位置はコンテナとなるUIViewに依存します。
addChild(checkBox)
checkBox.view.frame = container.bounds
container.addSubview(checkBox.view)
checkBox.didMove(toParent: self)
- デリゲートメソッドを実装します。チェックボタンを選択するとこのメソッドが呼ばれます。YSCheckBoxViewController生成時に追加した配列の順にBoolが割り振られます。
func didYSCeckBoxSelect(checks: [Bool]) {
print(checks)
}