【CocoaPods】挫折しながら学ぶ!素人のiOSアプリ開発 part6【swift】

iOSアプリ開発

前回に引き続き、「Eureka」というライブラリを使用して
設定画面を作成していきたいと思います!

が!
問題が発生しました。

今更になって気づいたのですが、Eurekaには標準で「数字入力チェック(数字以外が入力された場合にエラー)」が搭載されていないんですね!

パスワードは数字のみ対応にしたいので、数字チェックはどうしても必要です。

となると、「数字入力チェック」を自作して、機能を追加する必要があるわけですが・・・。

form
+++ Section(header: "Required Rule", footer: "Options: Validates on change")
<<< TextRow() {
$0.title = "Required Rule"
$0.add(rule: RuleRequired())
$0.validationOptions = .validatesOnChange
}

↑ソースコードをみても・・・やり方が全く分からないんですよね・・・。
大体「+++」とか「<<<」とか何なの・・・?

最近ようやくライブラリを使えるようになった僕にとって、機能追加なんて高度なことはできそうにありません。

今回はこのあたりで

挫折!

ってことで!!!

またいつか、僕に実力が備わった時に再挑戦してみましょう!

余談:「カスタム演算子」について

大体「+++」とか「<<<」とか何なの・・・?

先日疑問に感じた「+++」と「>>>」について調べてみました。どうやらこれらは「カスタム演算子」というらしいです。

カスタム演算子とは、その名の通り「自作の演算子」を作成できる仕組みのことです。

カスタム演算子を作成する際は

/ = - + * % < > ! & | ^ . ~

↑これらの記号を使用します。

↓このような可愛らしい演算子を作ることもできるってことですね!

<*^_^*>/

Eurekaのカスタム演算子の宣言部分はこんな感じ。

public func +++(left: Form, right: Section) -> Form {
left.append(right)
return left
}

public func +=<C : Collection>(inout lhs: Form, rhs: C) where C.Element == Section {
lhs.append(contentsOf: rhs)
}

public func <<<(left: Section, right: BaseRow) -> Section {
left.append(right)
return left
}

public func +=<C : Collection>(inout lhs: Section, rhs: C) where C.Element == BaseRow {
lhs.append(contentsOf: rhs)
}

ううむ・・・。
1つ目と3つ目は、ただ単にAppendしているだけのようにも見えますが・・・?
2つ目と4つ目はよくわかりませんね・・・。


Category
9WEB