Toast详解

Toast默认的创建方式:Toast.makText(context,"最简单的Toast",toast.LENGTH_SHORT).show();

这个默认的 gravity是Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL 得到的值是 80|1 =81;

所以默认的数据 这个Yoffset的值是变化的。不同的设备上可能不一样

当设置为

toast.setGravity(Gravity.LEFT, 0, 0);
Log.e("toast", "------------------------------");
Log.e("toast", "XOffset: "+toast.getXOffset());
Log.e("toast", "YOffset:"+toast.getYOffset());
Log.e("toast", "gravity: "+toast.getGravity());

d为这个值但是,Toast的显示位置就比较诡异了,居然会显示在屏幕的中间居左的位置如图

,当然设置 Gravity.RIGHT就会出现在屏幕中间靠右的位置。Gravity.RIGHT=5,Gravity.LEFT=3

这是为何啊?知道的给个评论。。。

toast.setGravity(Gravity.LEFT|Gravity.CENTER_HORIZONTAL, 0, 0);的效果好单独设置一个LEFT是一样的呢?




你可能感兴趣的:(Toast详解)