Closed5
参照先コンポーネントによって Nullable になったりならなかったりする
val button = binding.sampleButton
この結果が nullable だったりそうじゃなかったりする
package com.example.application.presenter.activity
import android.content.Intent
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.example.databinding.ActivityTopBinding
class TopActivity : AppCompatActivity() {
private lateinit var binding: ActivityTopBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityTopBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
val binding.sampleButton
}
}
これは、対象となる Activity の xml が複数あり、その中に android:id="@+id/sampleButton"
があったりなかったりするのが原因。
対象ファイル全てで対象に対して同一の id を付与することで NonNullable になった。
この id の対象があるか、とかで切り分けするのにも使えそう
知らなかったら、xml 側に原因があることに気づけずに嵌りそう
このスクラップは2021/04/06にクローズされました