圆角半径的范围是多少?

时间:2015-11-03 16:44:08

标签: android android-layout

我知道如何使用圆角进行视图会是这样的:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <corners android:radius="10dp"/>
</shape>

半径的范围是多少?是0到100 dp吗?

4 个答案:

答案 0 :(得分:5)

没有“范围”。 Dp表示设备像素。因此,如果您的观点为100dp,则正常范围将从050(因为设置的边框半径大于宽度或高度的一半,因此看起来相当奇怪)。

但基本上没有限制。

另外考虑到大小一半以上的值将被视为大小的一半(因此1000dp图像上的100dp的边框半径仍然只是50dp边框。 )
低于零的值与零相同。

通过定义非常大的半径(hacky),这为您提供了一个很好的选择,可以始终拥有完整的圆形边框。

答案 1 :(得分:0)

没有范围。您可以将任何值作为半径,负值或正值。

负值(如-40dp)对角半径没有影响。这与将角半径设为0dp相同 正值(如40dp)有效,但最多只有视图大小的一半。除此之外,它仍然是一样的。如果视图的高度为200dp,则200dp的圆角半径与100dp的行为方式相同。

答案 2 :(得分:0)

正如其他人已经说过的那样,android:radius属性没有范围。

但是,我怀疑你需要一个圆形/圆形的独立的大小(宽度和高度)。如果我是对的,您可以使用oval类型形状:

<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="oval" >
    <gradient
        android:startColor="#FFFF0000"
        android:endColor="#80FF00FF"
        android:angle="270"/>
</shape>

使用这种方法,您应确保startColor的Alpha通道为00

答案 3 :(得分:-1)

  

半径范围是多少?

此属性无范围

您的问题的解释:

  

机器人:半径

     

维。所有角的半径,作为维值或维度资源。通过以下属性覆盖每个角落。

Dimension resource表示:

  

以XML定义的维度值。使用数字后跟度量单位指定维度。例如:10px,2in,5sp。

有关android:radiusDimension Resource

的详细信息