4

是否可以从新的 ConstraintLayout 以编程方式设置 Guideline 的方向?

我正在使用这个版本的 ConstraintLayout 库:

compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha3'

如果你反编译 ConstraintLayout 类,你可以看到 LayoutParams 有字段“orientation”,但它不是一个公共字段,也没有 setter 方法。

4

3 回答 3

4

使用当前版本的库,在代码中,您可以使用约束集设置指南的方向。

    ConstraintSet constraintSet = new ConstraintSet();
    constraintSet.clone(constraintLayout);


    constraintSet.create(R.id.guideline, ConstraintSet.VERTICAL_GUIDELINE);
于 2017-04-23T07:20:53.060 回答
1

您必须将app:orientation更改为android:orientation

将方向属性命名空间从 app 更改为 android 以修复与 GridLayout 的冲突

在最近的日志中可用。

您不能手动编辑 Guideline 类,因为它使用Android 中不可用的java.awt.Rectanglejava.awt 库。

所以我想以编程方式这是不可能的,但你可以通过 XML 来做到这一点。

我希望它会给你一些线索,或者如果你仍然有问题,那么你可以在谷歌代码问题上发布你的问题

于 2016-07-05T13:20:06.553 回答
0

您需要更新到 ConstraintLayout alpha 6 - 方向字段已公开。

于 2016-08-10T20:27:40.633 回答