不能圆按钮的角
Can`t round the corners of the button
我写了下面的代码,但是我的 ImageButton 仍然有尖角。也许我不知道什么,如果你知道,请告诉我。
我的看法
<ImageButton
android:id="@+id/bottle"
android:src="@drawable/bottle"
android:background="@drawable/rouncorners"
android:layout_width="100dp"
android:layout_height="100dp"/>
可绘制 xml 文件:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="10dp"/>
</shape>
好的,我在我的 Studio 上测试了我的启动器图标作为里面的图像,我得到了所需的结果。这是整个 xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageButton
android:id="@+id/bottle"
android:layout_width="100dp"
android:layout_height="100dp"
android:contentDescription="@null"
app:srcCompat="@mipmap/ic_launcher"
android:background="@drawable/rouncorners"/>
</android.support.constraint.ConstraintLayout>
而要放置在可绘制文件中的xml是:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="3dip" android:color="@color/profile_cover" />
<corners android:radius="10dp" />
</shape>
结果如下:
这就是您要找的,对吧?它有圆角和内部图像。
添加此代码并清除项目和运行,希望它能显示。
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<stroke
android:width="2dp"
android:color="@color/your_color" />
<solid android:color="@color/your_color" /></shape>
我遇到了类似的问题(与按钮有关),我创建了一个带有角、描边、实体等的可绘制形状,但尽管我可以在预览中看到正确显示的按钮,但我看不到它在实际的应用程序中。我还没弄明白为什么,但解决方案是像这样以编程方式将drawable设置为按钮的背景
someButton.setBackgroundResource(R.drawable.button_rounded_corners);
我写了下面的代码,但是我的 ImageButton 仍然有尖角。也许我不知道什么,如果你知道,请告诉我。
我的看法
<ImageButton
android:id="@+id/bottle"
android:src="@drawable/bottle"
android:background="@drawable/rouncorners"
android:layout_width="100dp"
android:layout_height="100dp"/>
可绘制 xml 文件:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="10dp"/>
</shape>
好的,我在我的 Studio 上测试了我的启动器图标作为里面的图像,我得到了所需的结果。这是整个 xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageButton
android:id="@+id/bottle"
android:layout_width="100dp"
android:layout_height="100dp"
android:contentDescription="@null"
app:srcCompat="@mipmap/ic_launcher"
android:background="@drawable/rouncorners"/>
</android.support.constraint.ConstraintLayout>
而要放置在可绘制文件中的xml是:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="3dip" android:color="@color/profile_cover" />
<corners android:radius="10dp" />
</shape>
结果如下:
这就是您要找的,对吧?它有圆角和内部图像。
添加此代码并清除项目和运行,希望它能显示。
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<stroke
android:width="2dp"
android:color="@color/your_color" />
<solid android:color="@color/your_color" /></shape>
我遇到了类似的问题(与按钮有关),我创建了一个带有角、描边、实体等的可绘制形状,但尽管我可以在预览中看到正确显示的按钮,但我看不到它在实际的应用程序中。我还没弄明白为什么,但解决方案是像这样以编程方式将drawable设置为按钮的背景
someButton.setBackgroundResource(R.drawable.button_rounded_corners);