【发布时间】:2018-11-29 16:55:12
【问题描述】:
我正在通过使用新的 ConstraintLayout (1.1.2) 来扁平化我的布局,但我无法再控制 ProgressBar 在组中时的可见性。这是我的布局 XML 文件的最简单版本,它重现了该问题:
<android.support.constraint.ConstraintLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<!-- This group prevents me from hiding ProgressBar -->
<android.support.constraint.Group
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:constraint_referenced_ids="imageLoadingSpinner" />
<ProgressBar
android:id="@+id/imageLoadingSpinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</android.support.constraint.ConstraintLayout>
我引入了 Group 是为了控制一些布局,但为了简单起见,我将所有这些都省略了。该bug的本质是引入组阻止我将ProgressBar的可见性设置为GONE。
以下代码不再隐藏 ProgressBar:
find(R.id.imageLoadingSpinner).setVisibility(GONE);
要明确一点,如果我删除组,如下图,我可以将ProgressBar的可见性设置为GONE:
<android.support.constraint.ConstraintLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<!-- Commenting out this group allows me to hide ProgressBar -->
<!--<android.support.constraint.Group-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--app:constraint_referenced_ids="imageLoadingSpinner" />-->
<ProgressBar
android:id="@+id/imageLoadingSpinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</android.support.constraint.ConstraintLayout>
我找不到有关此问题的任何信息。 ProgressBar visibility issue 无关。
【问题讨论】:
标签: android android-layout android-constraintlayout