如何在ConstraintLayout中使用ViewStub?

joh*_*rei 8 android viewstub android-constraintlayout

似乎在a ViewStub中膨胀时ConstraintLayout,结果视图已经失去了所有约束.我想我们可以使用膨胀视图来定义约束ConstraintSet,但这种方法会失败ViewStub.

有没有办法做到这一点?

ban*_*988 21

有一个简单的解决方案:

在你的ViewStub中,让inflatedId属性与id

像这样:

<ViewStub
    android:id="@+id/pocket_view"
    android:inflatedId="@+id/pocket_view"
    android:layout="@layout/game_pocket_view"
    android:layout_width="@dimen/game_pocket_max_width"
    android:layout_height="@dimen/game_pocket_max_height"
    app:layout_constraintLeft_toLeftOf="@id/avatar_view"
    app:layout_constraintRight_toRightOf="@id/avatar_view"
    app:layout_constraintTop_toTopOf="@id/avatar_view"
    app:layout_constraintBottom_toBottomOf="@id/avatar_view"
    />
Run Code Online (Sandbox Code Playgroud)

  • 同时工作和零意义。因为事情应该在安卓上进行。 (9认同)