iT邦幫忙

2021 iThome 鐵人賽

DAY 18
0
自我挑戰組

Android kotlin &MVVM系列 第 18

Android學習筆記18

今天把dialogfragment也搭配上bindnig然後試著把dialog的動作移到dialogviewmodel之中

class FragmentDialog: DialogFragment() {

    private val viewModel: DialogViewModel<MainDialogResult> by activityViewModels()

    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        val binding = DialogfragmentBinding.inflate(inflater,container,false)
        binding.login.setOnClickListener {
            val message = "ok"
            viewModel.result.postValue(MainDialogResult.Ok(message))
            dismiss()
        }

        binding.cancel.setOnClickListener {
            viewModel.result.postValue(MainDialogResult.Cancel)
            dismiss()
        }
        binding.progressBar.visibility = View.VISIBLE

        binding.progressBar2.max = 100
        Thread{
            for (i in 0..100){
                binding.progressBar2.progress = i
                //Thread.sleep(500)
                SystemClock.sleep(500)
            }
        }.start()
        binding.progressBar2.progress = 0

        return binding.root
    }


}

這邊是還沒移過去的樣子,雖然目前架構還不完整,但是使用databinding之後畫面乾淨很多,dialog的viewmodel還在研究當中


上一篇
Android學習筆記17
下一篇
Android學習筆記19
系列文
Android kotlin &MVVM30

尚未有邦友留言

立即登入留言