2017-12-13 19 views
1

nullでない場合は、特定のタイプのオブジェクトにオブジェクトをキャストする最適な方法はあります(それ以外の場合は、ファクトリメソッドが呼び出されます)。これはBaseAdapter内部で発生しています。それを行う最善の方法は何ですか?これは正しいキャスト方法ですか?

val itemView = view as? ItemView ?: factory() 

私は、Android Studioで

未確認のキャストを次の警告を取得しています:ビューの? ItemView

+0

'@Suppress( "UNCHECKED_CAST")'あなたが;-)何をしているかを知っていれば – donfuxx

答えて

1

にあなたはパターンマッチングでエレガントかつ機能的にそれを処理することができます

val itemView = when(view) { 
    is ItemView -> view 
    else -> factory() 
} 
関連する問題