Android 单个圆角(不是所有角)

Android 单个圆角(不是所有角),android,canvas,android-canvas,android-drawable,android-bitmap,Android,Canvas,Android Canvas,Android Drawable,Android Bitmap,我试图只在位图的顶角上获得圆角。使用RoundedBitmapDrawable,我可以在所有拐角处获得圆角,但如何仅在顶部获得圆角 我用来取整所有角落的代码: Bitmap src = BitmapFactory.decodeResource(getResources(), R.drawable.login_background, options); RoundedBitmapDrawable dr = RoundedBitmapDrawableFactory.create(getResourc

我试图只在位图的顶角上获得圆角。使用RoundedBitmapDrawable,我可以在所有拐角处获得圆角,但如何仅在顶部获得圆角

我用来取整所有角落的代码:

Bitmap src = BitmapFactory.decodeResource(getResources(), R.drawable.login_background, options);
RoundedBitmapDrawable dr = RoundedBitmapDrawableFactory.create(getResources(), src);
dr.setCornerRadius(convertToPixels(context, CORNER_RADIUS));
myView.setBackground(dr);
您可以使用

实际上,可以用相同的半径圆角,但不能解决您的问题。 但我可能会建议你使用。 绘制具有所需圆角的可绘制9面片,并将其传递给变换


您还可以尝试编写自己的自定义滑动变换复制或扩展:

RoundedBitmapDrawable不允许您指定要圆角的角,它可以全部圆角是的。。。。简而言之,这是我的问题。我找到了BaseCanvas.drawRoundRect,但无法进一步深入了解它是如何实际绘制角点的:/我不知道以后您想在哪里使用位图,但此库可能会有所帮助,它可能只对特定角点进行圆角-。您可以使用xml drawables来实现此目的。您可以指定各个角点。很遗憾,我不能使用9-patch:/谢谢库中的建议