Androidをkotlinで開発するにあたって警告を全部消したときのメモ

警告を消すにあたっての手順をつらつらと紹介。
ちなみにAlt + Enter で修正候補が出てくるので積極的に使うといいかと。





Name shadowed: xxxx




例えば以下のように変数を上書き宣言すると警告。
val test = 1
{
    val test = 2
}

上書きされるので勘違いしかねないということだがベストな対応方法が思いつかない
かといって宣言せずに同じ変数を利用するというのもなんか違う気がする。
別名にするか内側のvalを外して可変にする。



Parameter 'xxxx' is never used, could be renamed to _



関数の引数を使用していない場合警告。リスナーなどでよく見る。
メッセージ通り_で置き換えるとよし。


Variable 'xxxxx' initializer is redundant



初期化後すぐ値を入れていると警告。
宣言と初期化を同時にする。
var test = 0
test = 1


Warning:(yyy, xxx) 'getColor(Int): Int' is deprecated. Deprecated in Java


Androidのバージョンアップに合わせて非推奨に

以下のように書き換え
// resources.getColor(R.color.white)
// ↓
ContextCompat.getColor(applicationContext, R.color.white)



Warning:(1158, 17) Identity equality for arguments of types Int and Int is deprecated



文字列のindexOfによる検索で警告
数値の比較が非推奨になっている?意図しない動作をする場合があるらしい

// if( "matchString".indexOf("match") !== -1 )
// ↓
if( !"matchString".indexOf("match").equals(-1) )


他何かあったら追記予定

2018年2月21日水曜日