Android 约束约束半径没有响应
我正在使用,我希望避免使用半径的固定大小值,以便我的布局能够响应所有屏幕大小Android 约束约束半径没有响应,android,android-layout,android-constraintlayout,Android,Android Layout,Android Constraintlayout,我正在使用,我希望避免使用半径的固定大小值,以便我的布局能够响应所有屏幕大小 我现在拥有的是app:layout\u constraintCircleRadius=“100dp”上的buttonB,这个固定大小不会对所有屏幕大小产生影响 我看到了,但我想知道如何(如果可能的话)使半径动态化,而不是任何变通方法来达到预期的结果 我正在使用此布局: <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.
app:layout\u constraintCircleRadius=“100dp”
上的buttonB
,这个固定大小不会对所有屏幕大小产生影响<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/buttonA"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:text="A"/>
<Button
android:id="@+id/buttonB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="@+id/buttonA"
app:layout_constraintCircle="@+id/buttonA"
app:layout_constraintCircleAngle="40"
app:layout_constraintCircleRadius="100dp"
app:layout_constraintEnd_toEndOf="@+id/buttonA"
app:layout_constraintStart_toStartOf="@+id/buttonA"
app:layout_constraintTop_toTopOf="@+id/buttonA"
android:text="B" />
</androidx.constraintlayout.widget.ConstraintLayout>
此外,我还检查了,它还包含固定大小值,如您所见:
您需要为宽度和高度设置int值,然后它将工作您可以使用
android SDK提供了一个新的大小单位——sdp(可伸缩dp)。这
大小单位根据屏幕大小进行缩放。它可以帮助Android开发者
支持多个屏幕
范例
app:layout_constraintCircleRadius="@dimen/_85sdp"
您可以在运行时计算请求的半径,并通过设置ConstraintLayout.LayoutParams
以编程方式更改半径,这是一个非常宽泛的答案,您能详细说明吗?因为android:layout\u width=“800dp”
是int值,但它根本不会响应。看起来很有希望,我很快会检查这个答案