ToastActivity.java文件:

 1 public class ToastActivity extends AppCompatActivity {
2 private Button mbtnToast1,mbtnToast2,mbtnToast3;
3 @Override
4 protected void onCreate(Bundle savedInstanceState) {
5 super.onCreate(savedInstanceState);
6 setContentView(R.layout.activity_toast);
7 mbtnToast1=findViewById(R.id.btn_toast1);
8 mbtnToast2=findViewById(R.id.btn_toast2);
9 mbtnToast3=findViewById(R.id.btn_toast3);
10 OnClick onClick=new OnClick();
11 mbtnToast1.setOnClickListener(onClick);
12 mbtnToast2.setOnClickListener(onClick);
13 mbtnToast3.setOnClickListener(onClick);
14 }
15
16 class OnClick implements View.OnClickListener{
17
18 @Override
19 public void onClick(View view) {
20 switch (view.getId()){
21 case R.id.btn_toast1:
22 Toast.makeText(getApplicationContext(), "点击一", Toast.LENGTH_SHORT).show();
23 break;
24 case R.id.btn_toast2:
25 Toast toastCenter=Toast.makeText(getApplicationContext(),"点击二居中显示",Toast.LENGTH_SHORT);
26 toastCenter.setGravity(Gravity.CENTER,0,0);
27 toastCenter.show();
28 break;//使提示框居中显示
29 case R.id.btn_toast3:
30 Toast toastCustom=new Toast(getApplicationContext());
31 LayoutInflater inflater=LayoutInflater.from(ToastActivity.this);
32 View view1 = inflater.inflate(R.layout.layout_toast, null);
33 ImageView imageView=view1.findViewById(R.id.iv_toast);
34 TextView textView=view1.findViewById(R.id.tv_toast);
35 imageView.setImageResource(R.drawable.zidingyi);
36 textView.setText("点击三自定义提示框出现");
37 toastCustom.setView(view1);
38 toastCustom.setDuration(Toast.LENGTH_SHORT);
39 toastCustom.show();
40 break;
41 }
42 }
43 }
44 }

然后对应activity_toast.xml文件:

 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 android:layout_width="match_parent"
3 android:layout_height="match_parent"
4 android:orientation="vertical">
5
6 <Button
7 android:id="@+id/btn_toast1"
8 android:layout_width="match_parent"
9 android:layout_height="wrap_content"
10 android:text="默认"/>
11
12 <Button
13 android:id="@+id/btn_toast2"
14 android:layout_width="match_parent"
15 android:layout_height="wrap_content"
16 android:text="改变提示框出现位置"/>
17
18 <Button
19 android:id="@+id/btn_toast3"
20 android:layout_width="match_parent"
21 android:layout_height="wrap_content"
22 android:text="自定义(带图片)"/>
23
24 </LinearLayout>

还有一个layout_toast.xml文件来定义自定义提示框:

 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 android:layout_width="wrap_content"
3 android:layout_height="wrap_content"
4 android:orientation="vertical"
5 android:background="@color/greydrak"
6 android:layout_gravity="center">
7 <ImageView
8 android:id="@+id/iv_toast"
9 android:layout_width="100dp"
10 android:layout_height="100dp"
11 android:scaleType="fitCenter"
12 android:layout_gravity="center"/>
13
14 <TextView
15 android:id="@+id/tv_toast"
16 android:layout_width="wrap_content"
17 android:layout_height="wrap_content"
18 android:textSize="20dp"
19 android:textColor="@color/white"
20 android:layout_marginTop="5dp"/>
21
22 </LinearLayout>

使提示框居中显示&自定义提示框的更多相关文章

  1. 写了一个迷你toast提示插件,支持自定义提示文字和显示时间

    写了一个迷你toast提示插件,支持自定义提示文字和显示时间,不想用其他第三方的ui插件,又想要toast等小效果来完善交互的同学可以试试, 代码中还贡献了一段css能力检测js工具函数,做项目的时候 ...

  2. 实现password框中显示文字提示的方式

    其实实际上实现中并不能让password中显示文字提示,但是我们在工作中有这样的需求,当没输入东西的时候,框内有提示输入密码,但是当输入东西的时候又显示的是*号,那么是如何实现的呢?其实原理很简单,就 ...

  3. 扩展Snackbar 使其支持居中显示

    https://github.com/nispok/snackbar 默认Snackbar支持底部或者顶部显示,不支持居中显示 查看Snackbar.java的源码可以看到createMarginLa ...

  4. asp.net 结合本地jQuery使在提交时显示错误提示

    最近在做一个项目,做的表单有的比较长,如果直接点提交,错误提示有时可能用户看不见,对用户体验不好.还有客户端提交有点慢,担心用户重复提交,于是做了个检测用户提交表单验证是否有错误,没错误就提交,且把按 ...

  5. jquery datatable无数据提示不居中显示

    原文地址:https://www.jianshu.com/p/fc4784d11722 昨天遇到一个问题,datatable生成的表格没有数据,但是“No data found”没有居中,根本原因是c ...

  6. js(window.open)浏览器弹框居中显示

    <span style="background-color: rgb(204, 204, 204);"><html> <meta name=" ...

  7. css使Img图片居中显示

    <div class="flex-center listing-img"> <img v-if="item.imgUrl" v-bind:sr ...

  8. 让几个横向排列的浮动子div居中显示的方法

    div设置成float之后,就无法使子div居中显示了,那么如何让几个横向排列的浮动的div居中显示呢,下面有个不错的方法,希望对大家有所帮助 div设置成float之后,在父div中设置text-a ...

  9. Echarts 地图(map)插件之 鼠标HOVER和tooltip自定义提示框

    [自行修改 "引号"] 一.鼠标HOVER时的事件: 参照官方文档解释, 可以看出这款插件有丰富的鼠标事件可供选择: 调用鼠标HOVER事件的方法很简单,只需把以下代码放到char ...

随机推荐

  1. mac下复制文件路径

    快捷键: option+command+C

  2. 用8个命令调试Kubernetes集群

    如果使用任何系统的时间足够长,那么你肯定必须对其进行调试,Kubernetes也不例外.它是一个分布式系统,有许多运动部件.我们将介绍8个可以运行以调试任何Kubernetes集群的命令. 它将帮助你 ...

  3. db2日志模式、备份归档、恢复解析

    DB2的日志分为两种模式,日志循环与归档日志,也就是非归档和归档模式.下面就具体介绍一下这两种方式以及和备份归档设置的关系. 一.日志循环 这是默认方式,也就是非归档模式,这种模式只支持(backup ...

  4. python 小兵(3)字典

    字典 # 存储数据 字典的查找快一些# 不可哈希的,就是可变的数据 可变的数据不能哈希 不可变的数据能哈希# python3.6 版本以上 字典默认是有序的, 咱们怎么写的就怎么打印出来# 但是 出去 ...

  5. C++ 类对象内存模型分析

    编译环境:Windows10 + VS2015 1.空类占用的内存空间 类占内存空间是只类实例化后占用内存空间的大小,类本身是不会占内存空间的.用sizeof计算类的大小时,实际上是计算该类实例化后对 ...

  6. 人工智能与智能系统2-> 机器人学2 | 时间与运动

    <Robotics, Vision and Control>学习到第三章,我才发现这本书是有配套视频的,第二章看的好辛苦,很多地方生硬理解了一下,现在打算把视频再好好看一看,作为补充,也会 ...

  7. 超详细的node/v8/js垃圾回收机制

    前言 垃圾回收器是一把十足的双刃剑.其好处是可以大幅简化程序的内存管理代码,因为内存管理无需程序员来操作,由此也减少了(但没有根除)长时间运转的程序的内存泄漏.对于某些程序员来说,它甚至能够提升代码的 ...

  8. Plist存储

  9. @synthesize基本概念

    1.什么是@synthesize @synthesize是编译器的指令 什么是编译器的指令 ? 编译器指令就是用来告诉编译器要做什么! @synthesize会让编译器做什么呢? @synthesiz ...

  10. pycharm工具使用

    转自: https://blog.csdn.net/u014044812/article/details/78727496   因公司的需求,需要做一个爬取最近上映的电影.列车号.航班号.机场.车站等 ...