コード
swift4
101 extension ConversationViewController: MessageInputBarDelegate { 202 303 /* 404 * 送信ボタンをタップした際のデリゲートメソッド 505 */ 606 func messageInputBar 707 (_ inputBar: MessageInputBar, didPressSendButtonWith text: String) 8 08{ 909 for component in inputBar.inputTextView.components { 1010 1111 if let text = component as? String { 1212 1313 //メーセージリストに追加 1414 let sender = currentSender() 1515 self.chatRoomModel?.sendMessage 1616 (text: text, userId: sender.id, userName: sender.displayName) 1717 { error in 1818 if error == nil { 1919 print("メッセージ送信成功") 2020 } else { 2121 print("メッセージ送信失敗") 2222 } 2323 } 2424 2525 } 2626 2727 } 2828 2929 //入力のTextFieldをリセット 3030 inputBar.inputTextView.text = String() 3131 } 3232 3333}
前提・実現したいこと
上記ソースコード内の"as?"は、どういう役割のために記述されているのでしょうか?
キャスト(型変換)を、理解出来ていないので、わかりやすく教えて頂けると嬉しいです。
試したこと
インターネットで"キャスト"や"型変換"について調べました。
参考にしたサイト
[swift]基本構文覚え書き キャストとか
Swift as!について - Qiita
型キャスト | Swift言語を学ぶ - Tea Leaves
コードが ``` で囲えていません。(閉じる方の ``` が無い)
あと、参考にしたサイトを書くときはURLも書いて下さい。(リンクのMarkdownを使って下さい)
リンクのMarkdownを使って下さい。 https://teratail.com/help#about-markdown
回答2件
あなたの回答
tips
プレビュー