Android自定义Toast样式

这是一个关于Android开发的博客,作者分享了如何创建一个自定义的Toast工具类。这个工具类能够显示自定义样式的提示信息,包括设置背景颜色、文字颜色、文字大小等,并提供了显示字符串和资源ID的方法。通过这个工具类,开发者可以更方便地在应用中展示自定义的Toast通知。

自定义的样式:view_toast.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/black"
    android:orientation="vertical"
    android:paddingHorizontal="24dp"
    android:paddingVertical="16dp">

    <TextView
        android:id="@+id/tv_toast_hint"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#ffffffff"
        android:textSize="18sp"/>
</LinearLayout>

自定义Toast工具类

public class ToastUtil {

    private static Toast mInstance = null;
private static Context mContent = null;
    /**
     * @param content
     */
    public static void show(Context context,String content) {
        LayoutInflater inflater = LayoutInflater.from(context);
        View toast_view = inflater.inflate(R.layout.view_toast, null);
        TextView textView = toast_view.findViewById(R.id.tv_toast_hint);
        if (context== null) {
            return;
        }
        if (temp != mContent) {
            mContent = context;
            mInstance = null;
        }
        if (mInstance == null) {
            mInstance = new Toast(context);
        }
        textView.setText(content);
        mInstance.setGravity(Gravity.CENTER, 0, 0);
        mInstance.setView(toast_view);
        mInstance.show();
        mContent = null;
        mInstance = null;
    }

    /**
     * @param resId
     */
    public static void show(Context context,@StringRes int resId) {
        LayoutInflater inflater = LayoutInflater.from(context);
        View toast_view = inflater.inflate(R.layout.view_toast, null);
        TextView textView = toast_view.findViewById(R.id.tv_toast_hint);
        if (context == null) {
            return;
        }
        if (temp != mContent ) {
            mContent = context;
            mInstance = null;
        }
        if (mInstance == null) {
            mInstance = new Toast(context);
        }
        textView.setText(resId);
        mInstance.setGravity(Gravity.CENTER, 0, 0);
        mInstance.setView(toast_view);
        mInstance.show();
        mCurrentActivity = null;
        mInstance = null;
    }

}
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值