【Swift】UITextViewの設定項目。文字列の校正、検出機能を追加する。(Swift 2.1、XCode 7.2)

2020年6月16日

UITextViewの設定

前回の記事でUITextView(以下、テキストビュー)の使い方を説明した。⇒「記事

Text View

 

その続きとして、本記事ではテキストビューの設定項目について説明する。テキストビューを選択した状態で下図赤枠のアトリビュートインスペクタボタンを押して設定画面を表示する。

UITextViewのアトリビュートインスペクタ

 

設定項目を1つずつ説明する。

Text

文字列の形式を「Plain」と「Attributed」の2つから選択する。

「Plain」は、文章中の個々の文字列に色や装飾の情報を含まない形式。ただし、テキスト全体の文字色やサイズは設定することができる。

Textに「Plain」を設定

 

「Attributed」は、文章中の個々の文字列に色や装飾の情報を含めることができる形式。
Textに「Attributed」を設定

 

Behavior

テキストビューをタップしたときの振る舞いを設定する。

Editableにチェックが入っていると、テキストビューをタップするとキーボードが開き、テキストを編集することができる。
Behaviorに「Editable」を設定

 

Selectableにチェックが入っていると、テキストビューを長押ししてテキストを部分選択することができるようになる。
Behaviorに「Selectable」を設定する

 

Detaction

テキストビューから特定の文字列を検出し強調表示する。

Linksにチェックを入れると、URLやメールアドレスの文字列が検出される。
DetactionのLinksにチェックする

 

Addressにチェックを入れると、住所の文字列が検出される。
DetactionのAddressにチェック

 

Phone Numberにチェックを入れると、電話番号が検出される。
DetactionのPhone numberにチェック

 

Eventsにチェックを入れると日時などの予定が検出される。
DetactionのEventsにチェック

 

Capitalization

単語の先頭の大文字入力についての設定。

「Words」は単語の先頭が大文字になるようにキーボード入力が大文字に自動で切り替わる。「Sentences」は一文の先頭が大文字になるようにキーボード入力が大文字に自動で切り替わる。「All Characters」はすべての文字が大文字入力になる。「None」は何も行われない。

以下は「Sentences」のプレイ動画

Correction

Yesに設定すると、編集中の単語の中から間違っている可能性のある単語を強調し、修正候補を示してくれる。
CorrectionをYESに設定

 

Spell Checking

Yesに設定するとスペルチェックをしてくれるようだが動作確認がとれない。使い方が分かったらここに追記する。

 

Keyboard Type

テーブルビューをタップしたときに表示するキーボードのタイプを指定する。選択肢は「ASCII Capable」、「Numbers and Punctuation」、「URL」、「Number Pad」、「Phone Pad」、「Name Phone Pad」、「E-mail Address」、「Decimal Pad」、「Twitter」、「Web Search」

下図は「Number Pad」を選択した場合に表示されるキーボード
Keyboard Typeに「Number Pad」を指定

 

Appearance

キーボードの外観を「Dark」と「Light」の2つから選択する。

下図は「Dark」を選択した場合に表示されるキーボード
Appearanceに「Dark」を設定

 

Return Key

Returnキーに表示する文字を選択する。

選択肢は「Go」、「Google」、「Join」、「Next」、「Route」、「Search」、「Send」、「Yahoo」、「Done」、「Emergency Call」。これらの選択肢は実際に表示される文字列ではないものがある。

設定値ごとの日本語キーボード、英語キーボードに表示されるReturnキーの文字列を下表にまとめる。GoogleとSearchとYahooの設定値で表示される文字列がまったく同じなのが気になる。

設定値 日本語キーボード 英語キーボード
1 Go 開く Go
2 Google 検索 Search
3 Join 接続 Join
4 Next 次へ Next
5 Route 経路 Route
6 Search 検索 Search
7 Send 送信 Send
8 Yahoo 検索 Search
9 Done 完了 Done
10 Emergency Call 緊急電話 Emergency Call

 

下図は「Join」を設定した場合のキーボード

Return Keyに「Join」を設定

 

Auto-enable Return Key

チェックを入れると、テキストビューに何も入力されていない場合はReturnキーが押せなくなる。

 

Secure Text Entry

チェックを入れると、テキストビューに入力した文字列が「●」にマスキングされる。テキストフィールドでは動作確認がとれたが、テキストビューではチェックを入れても反映されない。理由が分かったらここに追記する。