我想问问是否可以更改约束组的alpha?
<android.support.constraint.Group
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:constraint_referenced_ids="statusTv, statusDropDownIv"
android:id="@+id/buttonGroup"
android:visibility="visible"
android:alpha="0" />
现在,如果我将visibility
标记设置为可见/消失,那么alpha
标记就会生效,但是delete[] d;
标记似乎不起作用。
答案 0 :(得分:4)
组仅用于控制app:constraint_referenced_ids
中参考ID的可见性。根据{{3}}。
该组的可见性将应用于引用的窗口小部件。这是一种轻松隐藏/显示一组小部件而无需以编程方式维护此小部件的便捷方法。
答案 1 :(得分:0)
我们不能使用Group来更改Alpha值,但是可以使用 DataBinding 来更改Alpha。
<layout>
<data>
<variable name="alpha" type="float" />
</data>
<!-- Unrelated attributes omitted for brevity. -->
<android.support.constraint.ConstraintLayout>
<Button android:alpha="@{alpha}"/>
<TextView android:alpha="@{alpha}"/>
</android.support.constraint.ConstraintLayout>
</layout>
binding.alpha = 1.0f // 0.0 ~ 1.0
答案 2 :(得分:0)
对我也不起作用,请尝试使用ViewGroup设置Alpha属性并将您的视图[statusTv,statusDropDownIv]设置为子视图。对我来说,可以使用ScrollView,LinearLayout和其他工具。
我知道这很糟糕,因为约束布局应作为平面解决方案布局使用。
答案 3 :(得分:0)
我创建了此扩展功能以帮助我实现此功能
Count()
然后在代码中我像这样使用它
fun Group.setAlphaForAll(alpha: Float) = referencedIds.forEach {
rootView.findViewById<View>(it).alpha = alpha
}
答案 4 :(得分:-1)
您的代码对我有用!
尝试清理并重建您的项目
我希望这可以帮助您