博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
安卓 自定义吐司样式
阅读量:5166 次
发布时间:2019-06-13

本文共 1924 字,大约阅读时间需要 6 分钟。

大家都知道, 在中, 有一个提醒用户的弹幕 , 就是吐司, 用来提示用户一些信息, 但是安卓中默认的吐司 样式太暗淡了, 好多小伙伴不喜欢,今天, 就带着大家一起打造个性化的吐司弹幕...开始今天的代码

 
  1. import android.content.Context;  
  2. import android.graphics.PixelFormat;  
  3. import android.view.Gravity;  
  4. import android.view.LayoutInflater;  
  5. import android.view.View;  
  6. import android.view.WindowManager;  
  7. import android.widget.TextView;  
  8. import android.widget.Toast;  
  9. import java.util.zip.Inflater;  
  10.   
  11. /** 
  12.  * Created by sxt on 2015.11.27 
  13.  */  
  14. public class ToastUtils {  
  15.     private static Toast toast;  
  16.     private static TextView textView;  
  17.     /** 
  18.      * 自定义样式的吐司 
  19.      * <p/> 
  20.      * 静态toast 只创建一个toast实例 可以实时显示弹出的内容 
  21.      * 
  22.      * @param context 
  23.      * @param text 
  24.      */  
  25.     public static void showToast(Context context, String text) {  
  26.   
  27.         if (toast == null) { // 1. 创建前 2.消失后toast为null  
  28.             // 获取打气筒  
  29.             LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);  
  30.             //创建视图  
  31.             View view = inflater.inflate(R.layout.item_toast_bg, null);  
  32.             textView = (TextView) view.findViewById(R.id.tv_toast_text);  
  33.             //创建土司  
  34.             toast = new Toast(context);  
  35.             //设置居中方式  默认在底部  
  36.             //toast.setGravity(Gravity.CENTER, 0, 0);//如果不设置剧中方式,使用系统默认的吐司位置  
  37.             //设置土司的持续时长  
  38.             toast.setDuration(Toast.LENGTH_SHORT);  
  39.             //设置土司的背景View  
  40.             toast.setView(view);  
  41.         }  
  42.         //设置土司的显示额内容  
  43.         textView.setText(text);  
  44.         toast.show();  
  45.     }  
  46. }  
下面是吐司现实的布局  item_toast_bg.xml
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="match_parent"  
  4.     android:layout_height="match_parent"  
  5.     android:orientation="vertical">  
  6.   
  7.   
  8.     <TextView  
  9.         android:id="@+id/tv_toast_text"  
  10.         android:layout_width="wrap_content"  
  11.         android:layout_height="wrap_content"  
  12.         android:layout_gravity="center"  
  13.         android:background="@drawable/yellow_round_bg"  
  14.         android:gravity="center"  
  15.         android:paddingBottom="8dp"  
  16.         android:paddingLeft="30dp"  
  17.         android:paddingRight="30dp"  
  18.         android:paddingTop="8dp"  
  19.         android:textColor="@color/green" />  
  20.   
  21.   
  22. </LinearLayout>  

转载于:https://www.cnblogs.com/jiangbeixiaoqiao/p/6269241.html

你可能感兴趣的文章
socket阻塞与非阻塞,同步与异步
查看>>
团队工作第二天
查看>>
System类
查看>>
tableView
查看>>
Happy Great BG-卡精度
查看>>
Xamarin Visual Studio不识别JDK路径
查看>>
菜鸟“抄程序”之道
查看>>
Ubuntu下关闭防火墙
查看>>
TCP/IP 邮件的原理
查看>>
原型设计工具
查看>>
windows下的C++ socket服务器(4)
查看>>
css3 2d转换3d转换以及动画的知识点汇总
查看>>
【Java】使用Eclipse进行远程调试,Linux下开启远程调试
查看>>
对Vue为什么不支持IE8的解释之一
查看>>
计算机改名导致数据库链接的诡异问题
查看>>
Java8内存模型—永久代(PermGen)和元空间(Metaspace)(转)
查看>>
ObjectiveC基础教程(第2版)
查看>>
centos 引导盘
查看>>
Notes of Daily Scrum Meeting(12.8)
查看>>
Apriori算法
查看>>