这期内容当中小编将会给大家带来有关如何在Android中使用Dialog、Toast和Snackbar实现一个提醒功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
1,Dialog
首先来介绍一下Dialog的用法:
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("title")
.setMessage("dialog content")
.setPositiveButton("ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
})
.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).show();
运行在不同版本的手机上显示的效果会不同,但是既然说到了是小技巧,Google已经充分考虑到了这一点,在appcompat-v7库中也提供了一个AlertDialog类:
import android.support.v7.app.AlertDialog;
2,Toast
先看一下Toast的基本用法:
Toast.makeText(context, "things happened", Toast.LENGTH_SHORT).show();
但是如果我们手打滑,点击了5次toast会出现五次,因为是被动的,所以不能及时让其消失;然而我带给大家的小技巧就是用ToastUtils.java来封装:
package com.gyq.dialog;
import android.content.Context;
import android.widget.Toast;
/**
* 将Toast封装成一个接口,写在公共的工具类中
* author: gyq
* create at 2017/1/11 14:30
*/
public class ToastUtils {
private static Toast toast;
public static void showToast(Context context,
String content) {
if (toast == null) {
toast = Toast.makeText(context,
content,
Toast.LENGTH_SHORT);
} else {
toast.setText(content);
}
toast.show();
}
}
然后使用在其他类中:
ToastUtils.showToast(this,"this is a toast !");
3,Snackbar
首先我们要在app/build.gradle闭包下:
compile 'com.android.support:design:24.2.1'
然后是使用:
Snackbar.make(mSnackbarBtn,"data delete",Snackbar.LENGTH_LONG)
.setAction("yes", new View.OnClickListener() {
@Override
public void onClick(View v) {
}
}).show();
4,小结
现在你有三种方式可以给用户提示信息,Dialog、Toast和Snackbar,下面我们对这三种方式的使用时机做个总结:
Dialog:当提示信息是至关重要的,并且必须要由用户做出决定才能继续的时候,使用Dialog。
Toast:当提示信息只是告知用户某个事情发生了,用户不需要对这个事情做出响应的时候,使用Toast。
Snackbar:以上两者之外的任何其他场景,Snackbar可能会是你最好的选择。
上述就是小编为大家分享的如何在Android中使用Dialog、Toast和Snackbar实现一个提醒功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。