Android Toast&Notification(Part I)

虽然声明是原创,但是大部分代码和思路还是来自互联网,这里加上自己的总结。

源代码在这里下载

在android中,Toast经常被用来当作应用程序反馈的操作,Toast出现的时候当前的程序界面仍然处于可见

状态并且可以和用户交互。

1、最简单的Toast

创建Toast需要三个参数:当前程序的context、Toast要现实的信息text、显示的时间duration(android中toast显示的时间默认

两种选择LENGTH_LONG和LENGTH_SHORT)

利用函数Toast.makeText(context, text, duration);可以创建一个Toast对象,然后调用toast.show()即可。

	Context context = getApplicationContext();
	CharSequence text = "Ordinary Toast";
	Toast toast = Toast.makeText(context, text, duration);
	//自定义Toast的位置
	//toast.setGravity(Gravity.TOP|Gravity.LEFT, 200, 200);
	toast.show();

效果点击Button显示Toast

Android Toast&Notification(Part I)_第1张图片

2、自定义界面的Toast

有时候需要自己定义Toast的界面,这会使得提醒更加的多样化。

首先创建自定义界面对应的xml文件,这里面定义custom_toast.xml文件




    

    


这段代码来自 这里,这个xml文件包含一个ImageView(图片)和TextView(文字),我们这个Toast会以“图片+文字”的形式展现。

使用:

首先创建一个LayoutInflater(具体作用不明),然后获取上述自定义的xml文件

	LayoutInflater inflater = getLayoutInflater();
	View layout = inflater.inflate(R.layout.custom_toast, (ViewGroup)findViewById(R.id.toast_layout_root));

然后自定义TextView中的文字、最后创建Toast对象然后调用.show()方法

	//注意是layout.findViewById()
	TextView text = (TextView)layout.findViewById(R.id.toastText);
	text.setText("This is userDefined Toast");
	Toast toast = new Toast(getApplicationContext());
	toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
	toast.setDuration(duration);
	toast.setView(layout);
	toast.show();

效果如图

Android Toast&Notification(Part I)_第2张图片

你可能感兴趣的:(Android)