プロジェクトをSwift 3に更新していますが、解決できないように見える次の警告に遭遇しました。
fileprivate var filteredTitlesList: [String] = []
if let filteredTitle: String = filteredTitlesList[indexPath.row] as String { // 'Non-optional expression of type 'String' used in a check for optionals'
// Do something
}
ここの同様の質問への答えは私を助けませんでした: オプションのチェックで使用されるタイプ 'AnyObject'の非オプション式
どうもありがとう!
既にアンラップされている値をアンラップしようとしているため、再度アンラップする必要がないため、エラーが発生します。 ifステートメントを次のように変更すると、黄金色になります。
if filteredTitleList.count > indexPath.row {
let filteredTitle = filterdTitleList[indexPath.row]
}
残念ながら、ifステートメント内で変数をバインドする方法はありません。将来的に変数を追加することを期待しています。
この警告の他の可能性は、たとえば次のようなステートメントを入れようとしているときです:let keyboardFrame: CGRect = keyboardFrameValue.cgRectValue
if
やguard
などの条件ステートメントで