首先是SnackBar
- 优点
- SnackBar是个神奇的东西(相对当时而言)
- 它拥有与以往不同的通知提醒方式,从限制性窗口提醒(老旧的Android不支持触击窗口外忽略操作)
- 具有比普通的Toast更明显的通知效果与比Dialog的更方便的交互
- 更快捷的的交互(就是向拖走啦)
- 缺点
- 仅做提醒用,不可作 限制用户必须选出操作
- 在全面屏设备上操作并不友善(重力所趋)
- 大屏幕设备单指滑动显然更不方便
上图:
代码:
Snackbar.make(view, "正在刷新...",Snackbar.LENGTH_LONG)//带按钮的Snackbar通知 .setAction("取消", new View.OnClickListener(){ //监听Snackbar的按钮事件 @Override public void onClick(View v) { Snackbar.make(view, "data deleted",Snackbar.LENGTH_LONG) .setAction("Undo", null).show();//不带按钮的Snackbar通知 } }) .show();
然后是Toast.
- Toast通知通知从最早的Android一直用到现在。
- 具有消息提示界面可自定义特性
上图:
代码:
//按钮引用,可忽略 public void btn1_click(View view){ toast1(); } public void btn2_click(View view){ toast2(); } //自定义Layout界面通知 public void toast1(){ Toast tongzhi = new Toast(this);//实例对象 LayoutInflater tpage = this.getLayoutInflater(); View vw = tpage.inflate(R.layout.toast1, null);//实例页面 tongzhi.setGravity(Gravity.BOTTOM, 0, 0);//制定位置 tongzhi.setView(vw);//制定页面 tongzhi.show(); } //普通通知 public void toast2(){ Toast.makeText(this, "正在下载", Toast.LENGTH_SHORT)//LENGTH_SHORT/LENGTH_LONG长短设置 .show(); }
最后是Dialog.
- Dialog通知也是从最早的Android一直用到现在。
- 最基本的交互方式
- 具有独有的限定型通知(限制用户必须做出选择)
代码:
public void btn1_click(View view){ dialog1(); } public void dialog1(){ AlertDialog.Builder builder = new AlertDialog.Builder(this);//实例对象 builder.setTitle("标题")//设定标题 .setMessage("详细消息blablabla")//设定消息文本 .setPositiveButton("确认", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) {//监听"确认"事件 } }) .setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) {//监听"取消"事件 } }) .show(); }
为什么有张是横屏的,因为:
中间触屏坏了...
明天上图。
过几天写几个花样TOAST提示。
请多多指教撒