Java 可缩放的RoundImageView-RoundImageView仍然是矩形

Java 可缩放的RoundImageView-RoundImageView仍然是矩形,java,android,imageview,scaling,foreground,Java,Android,Imageview,Scaling,Foreground,我正在尝试制作可缩放的RoundImageView。我在用这个 但我扩展了它,而不是使用标准的ImageView。此TouchImageView位于一些具有以下背景的框架布局中: <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> <solid android:color="#FFF"/> 此背景还具有TouchImageView。当我调用它

我正在尝试制作可缩放的RoundImageView。我在用这个 但我扩展了它,而不是使用标准的ImageView。此TouchImageView位于一些具有以下背景的框架布局中:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#FFF"/>

此背景还具有TouchImageView。当我调用它的函数setOval(true)时,一切看起来都很好,直到我开始缩放。看起来它只能创建圆形位图,但ImageView仍然是矩形

附言:我需要的是椭圆形而不是圆形

这里有一些图片:

缩放前:

缩放后:


谢谢你的回答!;)

对于有相同问题的人。我发现它很容易使用。它扩展了FrameLayout,因此可以在其中显示可缩放的视图。只需在drawable中创建椭圆形或您的形状:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#FFFFFF"/></shape>

并使用setMask(可绘制)。您还需要设置PorterDuffxFerMode(…)。我用了DST_

希望有帮助