亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android 開發(fā)之Dialog,Toast,Snackbar提醒

 更新時(shí)間:2017年03月11日 09:38:37   作者:小朵八  
這篇文章主要介紹了Android 開發(fā)之Dialog,Toast,Snackbar提醒的相關(guān)資料,需要的朋友可以參考下

今天給大家?guī)?lái)一篇簡(jiǎn)單易懂的微技巧文章,并沒有什么高深的技術(shù)點(diǎn),但重點(diǎn)是在細(xì)節(jié),相信可以給不少朋友帶來(lái)幫助。

Dialog和Toast所有人肯定都不會(huì)陌生的,這個(gè)我們平時(shí)用的實(shí)在是太多了。而Snackbar是Design Support庫(kù)中提供的新控件,有些朋友可能已經(jīng)用過(guò)了,有些朋友可能還沒去了解。但是你真的知道什么時(shí)候應(yīng)該使用Dialog,什么時(shí)候應(yīng)該使用Toast,什么時(shí)候應(yīng)該使用Snackbar嗎?先看效果圖:
這里寫圖片描述這里寫圖片描述這里寫圖片描述

1,Dialog

首先來(lái)介紹一下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();

運(yùn)行在不同版本的手機(jī)上顯示的效果會(huì)不同,但是既然說(shuō)到了是小技巧,Google已經(jīng)充分考慮到了這一點(diǎn),在appcompat-v7庫(kù)中也提供了一個(gè)AlertDialog類:

import android.support.v7.app.AlertDialog;

2,Toast

先看一下Toast的基本用法:

Toast.makeText(context, "things happened", Toast.LENGTH_SHORT).show();

但是如果我們手打滑,點(diǎn)擊了5次toast會(huì)出現(xiàn)五次,因?yàn)槭潜粍?dòng)的,所以不能及時(shí)讓其消失;然而我?guī)Ыo大家的小技巧就是用ToastUtils.java來(lái)封裝:

package com.gyq.dialog;

import android.content.Context;
import android.widget.Toast;

/**
 * 將Toast封裝成一個(gè)接口,寫在公共的工具類中
 * 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,小結(jié)

現(xiàn)在你有三種方式可以給用戶提示信息,Dialog、Toast和Snackbar,下面我們對(duì)這三種方式的使用時(shí)機(jī)做個(gè)總結(jié):

Dialog:當(dāng)提示信息是至關(guān)重要的,并且必須要由用戶做出決定才能繼續(xù)的時(shí)候,使用Dialog。
Toast:當(dāng)提示信息只是告知用戶某個(gè)事情發(fā)生了,用戶不需要對(duì)這個(gè)事情做出響應(yīng)的時(shí)候,使用Toast。
Snackbar:以上兩者之外的任何其他場(chǎng)景,Snackbar可能會(huì)是你最好的選擇。

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論