Android 自定义toast位置、圆角、背景和文字颜色

import android.graphics.Color;
import android.graphics.Outline;
import android.view.Gravity;
import android.view.View;
import android.view.ViewOutlineProvider;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

private void setToast() {
        Toast toast = Toast.makeText(this, "测试内容", Toast.LENGTH_SHORT);
        //绑定视图
        LinearLayout layout = (LinearLayout) toast.getView();
        //设置背景 我这里设置的是纯颜色 可以设置任何资源文件
        layout.setBackgroundResource(R.color.white);
        //设置圆角
        layout.setClipToOutline(true);
        layout.setOutlineProvider(new ViewOutlineProvider() {
            @Override
            public void getOutline(View view, Outline outline) {
                outline.setRoundRect(0, 0, view.getWidth(), view.getHeight(), 80);
            }
        });
        //获取Toast默认文字显示ID
        TextView tv = (TextView) layout.getChildAt(0);
        //设置字体大小
        tv.setTextSize(16);
        //设置字体颜色
        tv.setTextColor(Color.BLACK);
        //Toast显示的位置
        toast.setGravity(Gravity.BOTTOM, 0, 100);
            /* Gravity.CENTER:中间
               Gravity.BOTTOM:下方
               Gravity.TOP:上方
               Gravity.RIGHT:右边
               Gravity.LEFT:左*/
        toast.show();
    }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值