日付、住所、電話番号、リンクなど、いくつかの異なるデータ型を見つけようとしています。私はすでにそれらを見つけることができますが、下線を引いて色を変更してフォーマットできるようにしたいと考えています。これはこれまでの私のコードです。
func detectData() {
let text = self.textView.text
let types: NSTextCheckingType = .Date | .Address | .PhoneNumber | .Link
var error: NSError?
let detector = NSDataDetector(types: types.rawValue, error: &error)
var dataMatches: NSArray = [detector!.matchesInString(text, options: nil, range: NSMakeRange(0, (text as NSString).length))]
for match in dataMatches {
最初にループから各結果を取得し、次に1)それらを文字列に変換し、2)それらをフォーマットする必要があると考えていました。
最初の質問。フォーマットされた文字列を UITextView の同じ場所に戻すにはどうすればよいですか?
2 番目の質問です。私はそのようなスイッチを作成することを考えています
switch match {
case match == NSTextCheckingType.date
しかし、特定のタイプの NSTextCheckingType を取得したので、それらに必要な機能を持たせるにはどうすればよいでしょうか? (例: 電話番号に電話する、住所の地図を開く、日付のイベントを作成する)