无法以编程方式隐藏 <include> 项
Can't hide <include> item programmaticaly
Android Studio 3.6
在 app/build.gradle:
android {
viewBinding.enabled = true
在我的 activity:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = QrBluetoothSwipeActivityBinding.inflate(layoutInflater)
}
在我的 qr_bluetooth_swipe_activity.xml
<include
android:id="@+id/blueToothBottonContainer"
layout="@layout/bluetooth_bottom_container"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
我想以编程方式隐藏 blueToothBottonContainer。
所以我试试这个:
private fun setBottomContainreViewMode(isQrScreenVisible: Boolean) {
if (isQrScreenVisible) {
binding.qrBottonContainer.
}
}
但未找到类似 setVisible
的方法 smt
为什么?
setVisibility 方法属于视图 class。 <include>
标签并不是真正的 layout(View + ViewGroups)
。这就是为什么你不会在上面找到 setVisibility
方法的原因。
要隐藏包含的布局,您可以在 bluetooth_bottom_container
布局中为父布局指定 ID,然后将其可见性从 binding.blueToothBottonContainer.{parent_layout_id}
更改为
Android Studio 3.6
在 app/build.gradle:
android {
viewBinding.enabled = true
在我的 activity:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = QrBluetoothSwipeActivityBinding.inflate(layoutInflater)
}
在我的 qr_bluetooth_swipe_activity.xml
<include
android:id="@+id/blueToothBottonContainer"
layout="@layout/bluetooth_bottom_container"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
我想以编程方式隐藏 blueToothBottonContainer。 所以我试试这个:
private fun setBottomContainreViewMode(isQrScreenVisible: Boolean) {
if (isQrScreenVisible) {
binding.qrBottonContainer.
}
}
但未找到类似 setVisible
为什么?
setVisibility 方法属于视图 class。 <include>
标签并不是真正的 layout(View + ViewGroups)
。这就是为什么你不会在上面找到 setVisibility
方法的原因。
要隐藏包含的布局,您可以在 bluetooth_bottom_container
布局中为父布局指定 ID,然后将其可见性从 binding.blueToothBottonContainer.{parent_layout_id}
更改为