前提
Android Studioでアプリを作っています。DataBindingを利用しているのですが、いまいち動的にレイアウトを変更したときの反映についてよく分かりません。解決の糸口さえ掴めていない状態です。どうかお力をお貸しください。
実現したいこと
DataBindingを利用し、Layoutを動的に変更し、それを反映させたレイアウトを組み込みたい。
発生している問題・エラーメッセージ
LayoutをDataBindingを用いてKotlin上で変更した後、LayoutInflater及びDataBindingを利用してレイアウトを組み込んだ。しかし、初めに行った変更が反映されていない。
該当のソースコード
Kotin
1package jp.halo_sf.halo_notes 2 3import android.app.AlertDialog 4import android.app.Dialog 5import android.os.Bundle 6import android.view.View 7import androidx.constraintlayout.widget.ConstraintSet 8import androidx.fragment.app.DialogFragment 9import jp.halo_sf.halo_notes.databinding.NoteTakingDialogBinding 10 11 12class NoteTakingDialogFragment : DialogFragment() { 13 private lateinit var binding: NoteTakingDialogBinding 14 15 override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { 16 binding = NoteTakingDialogBinding.inflate(layoutInflater) 17 18 val constraintSet = ConstraintSet() 19 constraintSet.clone(binding.constraintLayout) 20 constraintSet.connect(R.id.horizontalScrollView, ConstraintSet.RIGHT, ConstraintSet.PARENT_ID, ConstraintSet.RIGHT, 8) 21 constraintSet.applyTo(binding.constraintLayout) 22 23 val builder = AlertDialog.Builder(activity) 24 builder.setView(binding.scrollView) 25 return builder.create() 26 } 27}
試したこと
DataBindingについて調べてみたが、該当する事象なし。
補足情報(FW/ツールのバージョンなど)
特になし。
あなたの回答
tips
プレビュー