如何在 kotlin 中动态填充芯片组?
How to fill chip group dynamicallly in kotlin?
我有一个 class 项目,其中包含一个 String 关键字数组。我将尝试使用 Kotlin 和新芯片中的每个关键字在回收站视图中显示每个问题。该芯片将包含在芯片组中。
我的芯片组XML代码是
<com.google.android.material.chip.ChipGroup
android:id="@+id/chpKeyword"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:singleSelection="true"
android:textAppearance="@style/TextAppearance.MaterialComponents.Chip">
</com.google.android.material.chip.ChipGroup>
我在 onViewCreated 函数中尝试填充芯片组是
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val chip= Chip(chpKeyword.context)
chip.text="hello"
chip.isClickable = true
chip.isCheckable = true
chip.setTextAppearance(R.style.TextAppearance_MaterialComponents_Button)
chpKeyword.addView(chip)
}
但问题是,当创建视图时,应用程序停止并抛出以下错误。
java.lang.IllegalArgumentException:此组件上的样式要求您的应用主题为Theme.MaterialComponents(或后代)。
我检查了 但它没有解决我的问题。
我想知道如何解决这个错误?
谢谢
此错误表示您的应用需要设置此主题Theme.MaterialComponents
请转到 res -> values -> styles
并将父项设置为 parent="Theme.MaterialComponents"
然后再次尝试 运行 您的应用。
我有一个 class 项目,其中包含一个 String 关键字数组。我将尝试使用 Kotlin 和新芯片中的每个关键字在回收站视图中显示每个问题。该芯片将包含在芯片组中。 我的芯片组XML代码是
<com.google.android.material.chip.ChipGroup
android:id="@+id/chpKeyword"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:singleSelection="true"
android:textAppearance="@style/TextAppearance.MaterialComponents.Chip">
</com.google.android.material.chip.ChipGroup>
我在 onViewCreated 函数中尝试填充芯片组是
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val chip= Chip(chpKeyword.context)
chip.text="hello"
chip.isClickable = true
chip.isCheckable = true
chip.setTextAppearance(R.style.TextAppearance_MaterialComponents_Button)
chpKeyword.addView(chip)
}
但问题是,当创建视图时,应用程序停止并抛出以下错误。
java.lang.IllegalArgumentException:此组件上的样式要求您的应用主题为Theme.MaterialComponents(或后代)。
我检查了
我想知道如何解决这个错误?
谢谢
此错误表示您的应用需要设置此主题Theme.MaterialComponents
请转到 res -> values -> styles
并将父项设置为 parent="Theme.MaterialComponents"
然后再次尝试 运行 您的应用。