Android中矩形圆角的最大值

ocr*_*mot 3 android shape android-layout

我想要得到一个如图所示的形状,一个角落完全是圆形的矩形: 在此输入图像描述

但似乎我不能在这个数字中获得"更圆"的角落:

在此输入图像描述

这是为什么?有最大值<corners android:radius="integer" />?当然我可以用png做到这一点,但我认为使用形状更有效率,所以我更喜欢这样.

我的代码:

<Button
    android:id="@+id/button_guest"
    android:layout_width="315dp"
    android:layout_height="80dp"
    android:background="@drawable/rounded_rectangle"
    android:contentDescription="@string/text_button_guest"
    android:onClick="startGuestMode"
    android:text="@string/text_button_normal"
    android:textAllCaps="false"
    android:textColor="#ff000000"
    android:textSize="50sp"
    android:layout_marginLeft="125dp"
    android:layout_marginStart="125dp"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />
Run Code Online (Sandbox Code Playgroud)

rounded_rectangle.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#ffffff" />
    <corners
        android:radius="40dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)

ocr*_*mot 9

好吧,我喜欢当我刮了几个小时,然后我最终在这里问了一个问题,然后我在不到10分钟的时间内找到了答案:D

解决方案在我的代码中.你会认为它应该具有相同的行为,但显然它没有.关于圆角的可能是另一个错误.

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#ffffff" />
    <corners
        android:bottomLeftRadius="40dp"
        android:bottomRightRadius="40dp"
        android:topRightRadius="40dp"
        android:topLeftRadius="40dp"
        />
</shape>
Run Code Online (Sandbox Code Playgroud)