自定义Toast的使用及效果

本文介绍了如何自定义Toast以解决系统默认Toast队列显示的问题。通过创建一个继承自Toast的类,设置自定义背景和布局,实现不依赖队列顺序即时显示的自定义Toast。文中详细列举了所需代码文件及其作用,包括shape资源文件、自定义Toast类、布局文件和测试主程序。
摘要由CSDN通过智能技术生成

自定义的Toast

建议大家花10分钟到半小时左右的时间看一下Toast的源码

1.需求问题

平时使用的Toast并不能满足用户的需求, 我们可以使用自定义的Toast, 这种自定义的Toast能够覆盖已经执行了的Toast语句,但还没有在屏幕上消失。 意思就是系统自带的Toast,它是以队列的形式输出的, 必须要等上一个Toast 语句消失后, 才会显示下一个Toast语句, 而自定义的没有这种限制条件。话不多说, 直接上代码。

2.需要用到的代码

(1) . 需要一个shape图形(状态列表图形),名称为toast_backgound.xml

这是自定义Toast的背景,便于显示,可以用黑底白字, 或者白底黑字,我这里所使用的是黑底白字。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="10dp"/>
    <solid android:color="#CC000000"/>
</shape>

注:一些需要注意的地方我都做了注释说明

(2) . 需要自定义一个BToast继承Toast类,名称为BToast.java
package com.example.myapplication;

import android.content.Context;
import android.text.Layout;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

public class BToast extends Toast {
   
    private BToast (Context context) {
   
        super(context);
    }
    private static BToast toast;
    
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值