ライブラリ「SwiftyAlert」を作りました。
ライブラリなんか作ってみたいなーと思い、作ってみました。
- github: simorgh3196/SwiftyAlert
Carthage
とCocoaPods
対応しました。いつも使ってるばっかりだったので、こういう風に作っているのかと勉強になりました。
「SwiftyAlert」UIAlertControllerをSwiftyにメソッドチェーンで設定して、表示することができるマイクロライブラリです。
コード量超絶少ないです。
ライブラリ作成に関しては、「Swiftでライブラリを公開する」を参考にさせてもらいました。
使い方
imporatする
*.swift
import SwiftyAlert
- Alert
*.swift
Alert(title: "Alert", message: "Simple Alert.")
.addDefault("OK")
.addCancel()
.show(self)
- ActionSheet
*.swift
Alert(title: "ActionSheet", message: "message", style: .ActionSheet)
.addDefault("Take Photo") { print("take phote") }
.addDefault("Open Library") { print("open library") }
.addDestructive("Delete") { print("delete") }
.addCancel()
.show(self)
- with TextField
*.swift
var idField: UITextField?
var passwordField: UITextField?
Alert(title: "Alert", message: "Alert with TextField.")
.addDefault("Login") {
print("Try Login.\nID:", idField?.text, "Password:", passwordField?.text)
}
.addTextField { textField in
idField = textField
textField.placeholder = "ID"
}
.addTextField { textField in
passwordField = textField
textField.placeholder = "Password"
}
.addCancel { print("Cancelled") }
.show(self) { print("Completion") }
導入方法
Carthage
とCocoaPods
に対応しています。
どちらも導入済みとします。
Carthage
Cartfile
という名前のファイルを作成。
以下を追加。
Cartfile
github "simorgh3196/SwiftyAlert"
上記を記述したらcarthage update
を実行
CocoaPods
pod init
を実行。
できたPodfileを編集。
target_nameは自分のものを利用。
Podfile
platform :ios, '8.0'
use_frameworks!
target 'target_name' do
pod "SwiftyAlert", '~>0.1.0'
end
Manual
SwiftyAlert/Alert.swift
を自分のプロジェクトに追加(importは不要)
or
SwiftyAlert.xcodeproj
を自分のプロジェクトに追加(import必要)
最後に
是非使ってみてください。
また、初めてのライブラリの公開のため、色々間違ってたり、コードに問題があるかも??しれません。
プルリクやスター待ってます:)