直播app开发搭建,自定义气泡效果(BubbleView)
直播app开发搭建,自定义气泡效果(BubbleView)
代码如下:
package com.example.myapplication;
import android.content.Context;
import android.graphics.BlurMaskFilter;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.util.Log;
import android.util.TypedValue;
import android.view.View;
import androidx.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class BubbleView extends View {
private int mBubbleMaxRadius = 15; // 气泡最大半径 px
private int mBubbleMinRadius = 8; // 气泡最小半径 px
private int mBubbleMaxSize = 50; // 气泡数量
private int mBubbleRefreshTime = 50; // 刷新间隔
private int mBubbleMaxSpeedY = 2; // 气泡速度
private int mBubbleMaxSpeedX = 4; // 气泡速度
private int mBubbleAlpha = 128; // 气泡画笔
private float mContentWidth; // 瓶子宽度
private float mContentHeight; // 瓶子高度
private RectF mContentRectF; // 实际可用内容区域
private Paint mBubblePaint; // 气泡画笔
public BubbleView(Context context) {
this(context, null);
}
public BubbleView(Context context, @Nullable AttributeSet attrs) {
this(context, attrs, 0);
}
public BubbleView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mContentWidth = dp2px(130);
mContentHeight = dp2px(260);
mBubblePaint = new Paint();
mBubblePaint.setColor(Color.GREEN);
mBubblePaint.setAlpha(mBubbleAlpha);
}
目前为自定义属性,布局文件中直接引用即可。
<com.example.myapplication.BubbleView
android:layout_width="300dp"
android:layout_height="100dp"/>
以上就是直播app开发搭建,自定义气泡效果(BubbleView), 更多内容欢迎关注之后的文章