ConstraintSet.createHor horizontalChain IllegalArgumentException: должно иметь 2 или более виджетов в цепочке - PullRequest
1 голос
/ 11 апреля 2019

Я сталкиваюсь с ошибкой при установке ограничения горизонтальной цепи с помощью ConstraintLayout:

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: me.optimize.debug, PID: 18532
    java.lang.RuntimeException: Unable to start activity ComponentInfo{me.optimize.debug/me.optimize.post.PostActivity}: java.lang.IllegalArgumentException: must have 2 or more widgets in a chain
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6119)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
     Caused by: java.lang.IllegalArgumentException: must have 2 or more widgets in a chain
        at android.support.constraint.ConstraintSet.createHorizontalChain(ConstraintSet.java:1032)
        at android.support.constraint.ConstraintSet.createHorizontalChain(ConstraintSet.java:1005)

Я в основном добавляю ограничение как:

set.createHorizontalChain(buttonA.id, ConstraintSet.LEFT, buttonC.id, ConstraintSet.RIGHT, arrayOf(buttonA.id, buttonB.id, buttonC.id).toIntArray(), arrayOf(0f, 0f).toFloatArray(), 0)

У меня более 2 виджетов, потому что я передаю buttonA, buttonB и buttonC.

1 Ответ

1 голос
/ 11 апреля 2019

Ну, когда я писал свой вопрос, я решил взглянуть на код android.support.constraint.ConstraintSet.createHorizontalChain, который нашел на GitHub, и предположить, что:

createHorizontalChain

массив chainIds и weights должны быть одинаковыми!

...