Установить параметры ограничения для CardView внутри ConstraintLayout - PullRequest
0 голосов
/ 14 ноября 2018

Мне нужно применить некоторую конфигурацию дисплея программно в Kotlin к представлению карты (потому что проблема в том, что я не могу сразу определить ее в xml)

Вот эта конфигурация в xml (которую я хочу иметь возможностьустановить идентичные программно, если это возможно)

       <android.support.v7.widget.CardView
            android:id="@+id/resultCard"
            android:layout_width="280dp"
            android:layout_height="340dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintVertical_bias="0.35">

       //some other Views inside this CardView 
     </android.support.v7.widget.CardView>

Можно ли достичь такой же конфигурации, кодируя ее в Kotlin?

1 Ответ

0 голосов
/ 14 ноября 2018

Чтобы добиться такой же конфигурации в Kotlin, вы можете попробовать:

val resultCard = findViewById(R.id.resultCard)
val params = resultCard.layoutParams as ConstraintLayout.LayoutParams
params.apply {
   startToStart = ConstraintLayout.LayoutParams.PARENT_ID
   endToEnd = ConstraintLayout.LayoutParams.PARENT_ID
   topToTop = ConstraintLayout.LayoutParams.PARENT_ID
   bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID
   horizontalBias = .5f
   verticalBias = .35f
}
...