天天看點

fragment textWatcher的設定位置

override fun onStart() {
        super.onStart()
        Log.d("------------", "1")
        val titleWatcher = object : TextWatcher {
            //使用匿名内部類建構一個監聽器監聽title文本變化
            override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
            }

            override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
                crime.title = s.toString()
            }

            override fun afterTextChanged(s: Editable?) {
            }
        }
        binding.crimeTitle.addTextChangedListener(titleWatcher)//把crimeTitle的文本監聽器設定為titleWatcher
        //在onStart裡設定監聽器防止因fragment狀态恢複而觸發
        binding.crimeSolved.setOnCheckedChangeListener { _, isChecked ->
            crime.isSolved = isChecked                         //設定checkBox的監聽器事件
        }