介绍

A toast provides simple feedback about an operation in a small popup. It only fills the amount of

space required for the message and the current activity remains visible and interactive. For

example, navigating away from an email before you send it triggers a “Draft saved” toast to let

you know that you can continue editing later. Toasts automatically disappear after a timeout.

翻译:

Toast以一种小弹框的方式来给予用户反馈,它只需要消息可以显示出来的那小部分空间,同时Activity依

然可见可交互。例如,当你写邮件的时候退出,会触发“草稿已保存”的Toast来让你知道你以后可以继续

编辑这封邮件。Toast会在一段时间后自己消失。

 Toast_第1张图片

类结构

Toast的成员

成员解释

成员 含义
Toast(Context) 构造函数
show() 显示Toast
cancel() 取消Toast
setMargin(float,float) 设置横向的margin和纵向的margin
setGravity(int ,int, int) 设置toast的位置重心和相对的XOffset, YOffset
makeText(Context, CharSequence, int) 利用字符串创建Toast
makeText(Context, int, int) 利用字符串资源创建Toast
setView(View) 设置自定义Toast显示的View
setDuration(int) 设置Toast的显示时间
setText 设置Message文本内容
备注: 部分getter方法和setter方法对应,没有写入

实际使用

布局文件
activity_main.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="mraz.com.toastdemo.MainActivity">    <Button  android:id="@+id/bt_simple" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorAccent" android:text="Simple Toast" />    <Button  android:id="@+id/bt_custom" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="30dp" android:background="@color/colorPrimary" android:text="Custom Toast" /></LinearLayout>

自定义的Toast布局
custom_toast.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="40dp" android:background="@drawable/shape_bg" android:orientation="horizontal">    <ImageView  android:layout_width="40dp" android:layout_height="40dp" android:src="@drawable/ic_account_circle_black_24dp" />    <TextView  android:layout_width="wrap_content" android:layout_height="40dp" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:gravity="center" android:text="This is a Custom Toast !" android:textStyle="italic" /></LinearLayout>

代码内容

package mraz.com.toastdemo;import android.content.Context;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import android.widget.Button;import android.widget.Toast;public class MainActivity extends AppCompatActivity implements View.OnClickListener {    Context mContext;    Button btSimple, btCustom;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mContext = this;        btSimple = (Button) findViewById(R.id.bt_simple);        btCustom = (Button) findViewById(R.id.bt_custom);        btSimple.setOnClickListener(this);        btCustom.setOnClickListener(this);    }    @Override    public void onClick(View view) {        switch (view.getId()) {            case R.id.bt_simple:                Toast.makeText(mContext, " This is a simple toast", Toast.LENGTH_SHORT).show();                break;            case R.id.bt_custom:                LayoutInflater layoutInflater = LayoutInflater.from(mContext);                View custToast = layoutInflater.inflate(R.layout.custom_toast, null);                Toast toast = new Toast(mContext);                toast.setView(custToast);                toast.setDuration(Toast.LENGTH_SHORT);                toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);                toast.show();                break;        }    }}

实际效果

 Toast_第2张图片

备注

Toast的内容比较简单,但是开发过程中应该会经常用到,说不定偶尔还会碰到显示不出来的情况,不要忘记执行show()方法,当然,还有可能是其他的原因导致你的Toast无法显示~

更多相关文章

  1. android中常见的二种数据解析方法----XML和Json
  2. Android SDK Manager无法更新解决方法
  3. Android Timer 更好方法
  4. 删除android ScrollView边界阴影方法
  5. Android显示网络图片相关实现方法浅谈
  6. android 中Drawable跟Bitmap转换及常用于图片相关操作方法 - And
  7. Android屏幕自适应的四种方法
  8. Android中隐藏ActionBar的方法

随机推荐

  1. android属性动画(property animation)使用
  2. Google官方出品的Android(安卓)App反编绎
  3. Android断点续传原理
  4. Android开发之
  5. android应用框架
  6. Android(安卓)dependency-injection(依赖
  7. android 进度对话框(ProgressDialog)的使
  8. 一个Activity的显示过程总结(一)
  9. 【总结】Mac版Android(安卓)Studio常用快
  10. 日新月异的Android新技术