【问题标题】:Constraint Layout - Guideline set orientation programmatically约束布局 - 以编程方式设置方向的指南
【发布时间】:2019-05-26 15:48:00
【问题描述】:

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

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

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

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

【问题讨论】:

  • 你能告诉我你为约束布局添加了哪个依赖吗?
  • @KishuDroid 我已经编辑了我的帖子。

标签: android android-constraintlayout


【解决方案1】:

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

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


    constraintSet.create(R.id.guideline, ConstraintSet.VERTICAL_GUIDELINE);

【讨论】:

    【解决方案2】:

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

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

    可在RecentLogs 获得。

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

    所以我想以编程方式这是不可能的,但你可以通过 XML 来实现。

    我希望它能给你一些线索,或者如果你仍然有问题,那么你可以在Google Code Issues发布你的问题。

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-12-26
        • 1970-01-01
        • 1970-01-01
        • 2021-11-22
        • 2013-06-23
        • 2012-10-01
        • 2018-04-08
        • 1970-01-01
        相关资源
        最近更新 更多