android.widget.Toast类

来源:互联网 发布:浏览器打开淘宝会崩溃 编辑:程序博客网 时间:2024/05/16 05:53
Toast类

java.lang.Object
 -android.widget.Toast
 
extends Object

Toast翻译过来是烤面包,跟其功能完全无一点关系。
Toast其实就是一个小提示,弹出后会自动消失,使用起来非常简洁方便。
其最简洁的使用方法也是最常用的使用方法如下:
Toast.makeText(getApplicationContext(), "默认样式的Toast", Toast.LENTH_SHOTR).show();
下面介绍一下Toast的几个主要方法:
#Toast
Toast(Context context);
构造方法,参数用getApplicationContext()。

#show
public void show();
将Toast显示出来,其实是添加到Toast队列中。

#cancel
public void chancel();
取消Toast的显示,或者将其从Toast队列中删除。实际该方法基本不需要用。

#makeText
public static Toast makeText(Context context, int resId, int duration);
public static Toast makeText(Context context, CharSequence text, int duration);
Toast.makeText(getApplicationContext(), "默认Toast样式", Toast.LENGTH_SHORT).show();
设置文本和持续时间,往往后面加一个show就直接显示出来了,一句话搞定。

#setDuration
void     setDuration(int duration);
设置持续时间,参数虽然是int型,实际上只能是Toast.LENGTH_LONG和Toast.LENGTH_SHORT两个,长的约4s,短的约2s。

#setGravity
void     setGravity(int gravity, int xOffset, int yOffset);
设置Toast显示位置,这个参数可就多了,后面的xOffset和yOffset就不用说了,就是横向和纵向的偏移,估计也不会用。
gravity参数有以下的值可用:
Gravity.CENTER 0x00000011 居中
Gravity.LEFT 0x00000003 靠左
Gravity.RIGHT 0x00000005 靠右
Gravity.TOP 0x00000030 靠上
Gravity.BOTTOM 0x00000050 靠下
Gravity.CENTER_HORIZONTAL 0x00000001 横向居中
Gravity.CENTER_VERTICAL 0x00000010 纵向居中
Gravity.FILL 0x00000077 占满
Gravity.FILL_HORIZONTAL 0x00000007 横向占满
Gravity.FILL_VERTICAL 0x00000070 纵向占满
Gravity.NO_GRAVITY 0x00000000 清除所有设置还原默认设置了,貌似就居中了
Gravity类下面还有一些参数,但貌似跟位置没关系,不知道干嘛的。

#setMargin
publi void setMargin(float horizontalMargin, float verticalMargin);
没太搞明白怎么个算法,反正两个参数都是小于零的数才有效的。

#setText
void     setText(int resId);

#setView
为Toast设置一个View,show的时候Toast将显示该View,用于完全的自定义Toast内容。
LayoutInflater inflater = getLayoutInflater();
                View layout = inflater.inflate(R.layout.custom,
                (ViewGroup) findViewById(R.id.llToast));
                ImageView image = (ImageView) layout.findViewById(R.id.tvImageToast);
                image.setImageResource(R.drawable.icon);

                Toast toast = new Toast(getApplicationContext());
                toast.setGravity(Gravity.RIGHT | Gravity.TOP, 12, 40);
                toast.setDuration(Toast.LENGTH_SHORT);
                toast.setView(layout);
                toast.show();

下面这些获得这获得那估计也是没啥用就不细说了。
#getDuration
#getGravity
#getHorizontalMargin
#getVerticalMargin
#getView
#getXOffset
#getYOffset
原创粉丝点击