全部書き換えるのが大変なのだが、下記のようにsublime textとかで正規表現で一発変換すると少し楽だった。
前提条件
- 変数名がidと同じようになっている時
置換
検索文字:@BindView.+\n.+var (.+): (.+\?) = null
置換文字:val $1: $2 by lazy{ binding?.$1 }
変更前
@BindView(R.id.itemImage)
var itemImage: ImageView? = null
@BindView(R.id.itemName)
var itemName: TextView? = null
↓
変更後
val itemImage: ImageView? by lazy{ binding?.itemImage }
val itemName: TextView? by lazy{ binding?.itemName }