Android 设置控件为圆形

Android的圆形控件 对于所有的View有效

在开发的过程中,肯定需要实现一个圆形的控件,而且不是绘制一个圆形,那么怎么弄呢,在Android5.0后,有一个类ViewOutlineProvider,可以实现这个功能,应该是对于所有VIew有效。

这里我是用的是TextureView,这个控件挺不一样的 其实这个和SurfaceView都可以使用了之后应该都可以。

代码如下

html 复制代码
public class TextureVideoViewOutlineProvider extends ViewOutlineProvider {
    @Override
    public void getOutline(View view, Outline outline) {
        int left = 0;
        int top = (view.getHeight() - view.getWidth()) / 2;
        int right = view.getWidth();
        int bottom = (view.getHeight() - view.getWidth()) / 2 + view.getWidth();
        outline.setOval(left, top, right, bottom);
    }
}

然后在布局所在的类里面去使用:

html 复制代码
  view.setOutlineProvider(new TextureVideoViewOutlineProvider());
  view.setClipToOutline(true);

原文链接:https://blog.csdn.net/weixin_43328457/article/details/106384660

相关推荐
Asin²+cos²=18 小时前
关于Android Studio Koala Feature Drop | 2024.1.2下载不了插件的解决办法
android·ide·android studio
大耳猫9 小时前
Android gradle和maven国内镜像地址
android·gradle·maven
-seventy-11 小时前
Android 玩机知识储备
android
CYRUS STUDIO11 小时前
frida脚本,自动化寻址JNI方法
android·运维·自动化·逆向·移动安全·jni·frida
暮志未晚Webgl12 小时前
102. UE5 GAS RPG 实现范围技能奥术伤害
android·java·ue5
Patience to do12 小时前
Android Studio项目(算法计算器)
android·算法·android studio
我又来搬代码了16 小时前
【Android】使用TextView实现按钮开关代替Switch开关
android
江-月*夜18 小时前
uniapp vuex 搭建
android·javascript·uni-app
大风起兮云飞扬丶19 小时前
Android——显式/隐式Intent
android
大风起兮云飞扬丶19 小时前
Android——metaData
android