gpt4 book ai didi

android - 如何在android中使用xml可绘制创建半圆填充形状?

转载 作者:行者123 更新时间:2023-12-02 13:18:59 30 4
gpt4 key购买 nike

我想使用 xml drawble 创建一个半实心的圆形形状?

像这样enter image description here

这是我迄今为止尝试过的努力

<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FCD83500"/>
<size
android:width="10dp"
android:height="5dp"/>
<corners
android:bottomLeftRadius="50dp"
android:bottomRightRadius="50dp"/>
</shape>

使用上面的代码我可以创建半圆,但我不知道如何使半圆透明

我也访问了一些SO帖子,但找不到任何解决方案

如果需要更多信息,请告诉我。提前致谢。您的努力将受到赞赏。

最佳答案

我已经从矢量图形创建了代码:

<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="314.015"
android:viewportHeight="314.015">
<path
android:fillColor="#FCD83500"
android:pathData="M157.007,0C70.291,0 0,70.289 0,157.007c0,86.712 70.29,157.007 157.007,157.007c86.709,0 157.007,-70.295 157.007,-157.007C314.014,70.289 243.716,0 157.007,0zM31.403,157.015c0,-69.373 56.228,-125.613 125.604,-125.613V282.62C87.631,282.62 31.403,226.38 31.403,157.015z" />
</vector>

输出将是:

enter image description here

现在,如果您想按照您的角度显示:

您可以按如下方式使用:

android:rotation="90"

在你的ImageView

更新TextView可绘制对象:

创建旋转可绘制对象的自定义方法。

private Drawable rotate(Drawable drawable, int degree) {
Bitmap iconBitmap = ((BitmapDrawable) drawable).getBitmap();

Matrix matrix = new Matrix();
matrix.postRotate(degree);
Bitmap targetBitmap = Bitmap.createBitmap(iconBitmap, 0, 0, iconBitmap.getWidth(), iconBitmap.getHeight(), matrix, true);

return new BitmapDrawable(getResources(), targetBitmap);
}

使用如下:

Drawable result = rotate(ContextCompat.getDrawable(mContext, R.drawable.ic_round), 90);
yourTextView.setCompoundDrawablesWithIntrinsicBounds(result, null, null, null);

Note: If you will find SVG image as you want then you do now have todo above code. I have tried to find image but didn't found so Rotationcode is necessary here.

希望对您有帮助。

谢谢。

关于android - 如何在android中使用xml可绘制创建半圆填充形状?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55037399/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com