Я начал использовать «новый» параметр ограничения из ConstraintLayout
, круговое ограничение .
Я хотел бы применить значение атрибута layout_constraintCircleRadius
программно, один разЯ буду вычислять радиус вида также программно.
Я пробовал много разных способов, используя метод
public void constrainCircle (int viewId,int id,int radius,float angle)
, описанный в document .
Я также искал об этом на многих форумах, но ничего не смог найти.Кто-нибудь когда-нибудь сталкивался с такой проблемой?
<android.support.constraint.ConstraintLayout
android:id="@+id/circle_constraint"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintWidth_percent="0.8"
app:layout_constraintDimensionRatio="W,1:1"
android:background="@drawable/circle">
<View
android:id="@+id/circle_center"
android:layout_width="20dp"
android:layout_height="20dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:background="#ff0000"/>
<View
android:id="@+id/circle_position_0"
android:layout_width="30dp"
android:layout_height="27dp"
android:background="#000000"
app:layout_constraintCircle="@id/circle_center"/>
</android.support.constraint.ConstraintLayout>
Circle_center будет оставаться в середине основного представления ограничений, и я хотел бы программно применить радиус и угол к circle_position_0.
СпасибоВы!