第12讲- Android之消息提示Toast

12讲 Android之消息提示Toast

1Toast

Toast 是一个 View 视图,在应用程序上浮动显示少量的信息给用户,它永远不会获得焦点,不影响用户的输入等操作,主要用于向用户显示一些帮助和提示。

特点:1.没有焦点(无法用触屏或者鼠标的方式点击toast消息);

    2.显示的时间有限,过一定的时间就会自动消失。

Toast 最常见的创建方式是使用静态方法

Toast.makeText(MainActivity.this,"hello!",Toast.LENGTH_LONG).show();

// 第一个参数:当前的上下文环境(Context类型)。可用getApplicationContext()或this(this指当前页面显示)

// 第二个参数:要显示的字符串。也可是R.string中字符串ID

// 第三个参数:指定显示的时间长短。Toast默认的有两个LENGTH_LONG(长)和LENGTH_SHORT(短),也可以使用毫秒如2000ms

Context提供了关于应用环境全局信息的接口。它是一个抽象类,它的实现由Android系统所提供。通过context我们可以加载资源,获取由android系统提供的一些服务类。

在android当中一般有两种context,1.application Context;2.activity Context

activity Context与applicationContext区别在于生命周期不一样,Activity Context生命周期更短。

2、设置toast位置

方法一:setGravity(int gravity, int xOffset, int yOffset)

//第一个参数:设置toast在屏幕中显示的起点位置;

//第二个参数:相对于第一个参数设置toast位置的水平横向的偏移量,正数向右偏移,负数向左偏移;

//第三个参数:垂直方向的偏移量,正数向下偏移,负数向上偏移。

//如果你设置的偏移量超过了屏幕的范围,toast将在屏幕内靠近超出的那个边界显示

方法二:setMargin(float horizontalMargin, float verticalMargin)

//以横向和纵向的百分比设置显示位置,参数均为float类型(水平位移正右负左,竖直位移正上负下)

Toast toast = Toast.makeText(MainActivity.this,"默认Toast样式", Toast.LENGTH_LONG);

toast.setGravity(Gravity.CENTER, 0,0);          //设置为居中显示

//toast.setGravity(Gravity.TOP |Gravity.LEFT, 0, 200); //设置Toast显示位置(起点位置,水平向右位移,垂直向下位移)

//toast.setMargin(-0.5f, 0f);                               //Toast显示位置,以横向和纵向的百分比计算

toast.show();

其中Gravity后缀可以改变,如Left, Right, Top等。后面的数字是相对偏移量。

原文地址:https://www.cnblogs.com/anyuan9/p/6171608.html