android surfaceview , videoview 背景加圆角

方法1
public class TextureVideoViewOutlineProvider extends ViewOutlineProvider {
        private float mRadius;
     
        public TextureVideoViewOutlineProvider(float radius) {
            this.mRadius = radius;
        }
     
        @Override
        public void getOutline(View view, Outline outline) {
            Rect rect = new Rect();
            view.getGlobalVisibleRect(rect);
            int leftMargin = 0;
            int topMargin = 0;
            Rect selfRect = new Rect(leftMargin, topMargin,
                    rect.right - rect.left - leftMargin, rect.bottom - rect.top - topMargin);
            outline.setRoundRect(selfRect, mRadius);
        }
    }

    mView.setOutlineProvider(new TextureVideoViewOutlineProvider(radius));
    mView.setClipToOutline(true);

所有的view通过这种方式都可以加圆角

但这种方法会特别卡,推荐下种方式

方法2

外部包裹cardview:

implementation 'androidx.cardview:cardview:1.0.0'

<android.support.v7.widget.CardView

        xmlns:card_view="http://schemas.android.com/apk/res-auto"

        android:id="@+id/card_view"

        android:layout_gravity="center"

        android:layout_width="200dp"

        android:layout_height="200dp"

        card_view:cardCornerRadius="4dp">

        <TextView

            android:id="@+id/info_text"

            android:layout_width="match_parent"

            android:layout_height="match_parent" />

    </android.support.v7.widget.CardView>

card_view:cardCornerRadius="4dp"  设置圆角

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值