文章目录
来源:由于我们在各种前端框架时都会有提示框,于是我想在安卓的效果也实现这个效果
icon:https://www.iconfont.cn/
一 效果图
二 代码部分
2.1 定义Shape文件
<?xml version="1.0" encoding="utf-8"?><shapexmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"><solidandroid:color="#FFFFFFFF"/><cornersandroid:radius="6dp"/></shape>
2.2 定义布局文件
<?xml version="1.0" encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:orientation="horizontal"android:layout_width="wrap_content"android:layout_height="wrap_content"><!-- 自定义布局 --><LinearLayoutandroid:background="@drawable/my_toast"android:layout_width="wrap_content"android:layout_height="40dp"><!-- 图标--><ImageViewandroid:id="@+id/alter_icon"android:layout_margin="10dp"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@drawable/alter_success"/><!-- 提示文字--><TextViewandroid:id="@+id/tv_toast"android:layout_width="wrap_content"android:layout_height="40dp"android:textSize="16sp"android:textColor="#4CAF50"android:layout_marginTop="10dp"android:layout_marginEnd="10dp"android:paddingEnd="10dp"/></LinearLayout></LinearLayout>
2.3 代码文件
packagecom.shu.Utils;importandroid.content.Context;importandroid.content.res.ColorStateList;importandroid.graphics.Color;importandroid.util.Log;importandroid.view.Gravity;importandroid.view.LayoutInflater;importandroid.view.View;importandroid.widget.ImageView;importandroid.widget.TextView;importandroid.widget.Toast;importcom.shu.R;/**
* @Author shu
* @Version 1.0
* @Date: 2022/04/17/ 20:26
* @Description 自定义Toast
**/publicclassMyToastUtils{protectedstaticToast toast=null;/**
* 成功提示
* @param context
* @param message
*/publicstaticvoidshowSuccessToast(Context context,String message){View view =LayoutInflater.from(context).inflate(R.layout.customtoast,null);TextView showText=view.findViewById(R.id.tv_toast);ImageView imageView= view.findViewById(R.id.alter_icon);
toast=newToast(context);//创建toast实例
toast.setView(view);//设置布局
showText.setText(message);// 消息
showText.setTextColor(Color.parseColor("#4CAF50"));// 颜色
imageView.setImageResource(R.drawable.alter_success);// 图标
toast.setDuration(Toast.LENGTH_SHORT);//设置toast的显示时间
toast.setGravity(Gravity.TOP,0,10);
toast.show();}/**
* 警告提示
* @param context
* @param message
*/publicstaticvoidshowWarningToast(Context context,String message){View view =LayoutInflater.from(context).inflate(R.layout.customtoast,null);TextView showText=view.findViewById(R.id.tv_toast);ImageView imageView= view.findViewById(R.id.alter_icon);
toast=newToast(context);//创建toast实例
toast.setView(view);//设置布局
showText.setText(message);// 消息
showText.setTextColor(Color.parseColor("#F95710"));// 颜色
imageView.setImageResource(R.drawable.alter_wran);// 图标
toast.setDuration(Toast.LENGTH_SHORT);//设置toast的显示时间
toast.setGravity(Gravity.TOP,0,10);
toast.show();}/**
* 信息提示
* @param context
* @param message
*/publicstaticvoidshowInfoToast(Context context,String message){View view =LayoutInflater.from(context).inflate(R.layout.customtoast,null);TextView showText=view.findViewById(R.id.tv_toast);ImageView imageView= view.findViewById(R.id.alter_icon);
toast=newToast(context);//创建toast实例
toast.setView(view);//设置布局
showText.setText(message);// 消息
showText.setTextColor(Color.parseColor("#2D8CEF"));// 颜色
imageView.setImageResource(R.drawable.alter_info);// 图标
toast.setDuration(Toast.LENGTH_SHORT);//设置toast的显示时间
toast.setGravity(Gravity.TOP,0,10);
toast.show();}/**
* 错误提示
* @param context
* @param message
*/publicstaticvoidshowErrorToast(Context context,String message){View view =LayoutInflater.from(context).inflate(R.layout.customtoast,null);TextView showText=view.findViewById(R.id.tv_toast);ImageView imageView= view.findViewById(R.id.alter_icon);
toast=newToast(context);//创建toast实例
toast.setView(view);//设置布局
showText.setText(message);// 消息
showText.setTextColor(Color.parseColor("#FD6483"));// 颜色
imageView.setImageResource(R.drawable.alter_error);// 图标
toast.setDuration(Toast.LENGTH_SHORT);//设置toast的显示时间
toast.setGravity(Gravity.TOP,0,10);
toast.show();}}
2.4 使用
packagecom.shu;importandroidx.appcompat.app.AppCompatActivity;importandroid.content.Context;importandroid.os.Bundle;importandroid.view.View;importcom.shu.Utils.MyToastUtils;publicclassAlterActivityextendsAppCompatActivity{privateContext context;@OverrideprotectedvoidonCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_alter);
context=getApplicationContext();}publicvoidsuccessAlter(View view){MyToastUtils.showSuccessToast(context,"这是成功消息");}publicvoiderrorAlter(View view){MyToastUtils.showErrorToast(context,"这是错误消息");}publicvoidwarningAlter(View view){MyToastUtils.showWarningToast(context,"这是警告消息");}publicvoidinfoAlter(View view){MyToastUtils.showInfoToast(context,"这是消息");}}
本文转载自: https://blog.csdn.net/weixin_44451022/article/details/124237284
版权归原作者 长安不及十里 所有, 如有侵权,请联系我们删除。
版权归原作者 长安不及十里 所有, 如有侵权,请联系我们删除。