android.widget.Toast类

Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失。而且Toast主要用于向用户显示提示消息。

1,常规用法

1
2
3
Toast.makeText(context, "一条消息", Toast.LENGTH_SHORT).show();
// 或
Toast.makeText(context, "一条消息", Toast.LENGTH_LONG).show();

其中context是上下文。

虽然只需要一行代码,但写起来并不方便。做个简单封装吧。

2,封装Toast

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public class T {

private static Application app;

private T() {
}

public static void init(Application app) {
T.app = app;
}

public static void s(String msg) {
if (app == null) return;
s(app, msg);
}

public static void l(String msg) {
if (app == null) return;
l(app, msg);
}

public static void s(Context context, String msg) {
Toast.makeText(context, msg, Toast.LENGTH_SHORT).show();
}


public static void l(Context context, String msg) {
Toast.makeText(context, msg, Toast.LENGTH_LONG).show();
}
}

使用时,先在自己写的Application中初始化。

1
2
3
4
5
6
7
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
T.init(this);
}
}

使用时,只需:

1
2
3
T.s("一条消息");// 时间较短
//或
T.l("一条消息");// 时间较长

如果没有在Application中初始化。也可以:

1
2
3
T.s(context,"一条消息");// 时间较短
//或
T.l(context,"一条消息");// 时间较长

虽然T的命名是不规范的,但是用起来真是方便。当它比较特殊常用就好啦。


配一张图

其他

还有对Log的简单封装:Android中的Log类