android toast的使用

释放双眼,带上耳机,听听看~!

今天,没有什么可以写的,在网上查找资料,发现toast有很多知识点,所以记录一下。

Toast

Toast是为了给当前视图显示一个浮动的显示块,它永远不会获得焦点。一般用于提示一些不那么引人注目,但是又希望用户看见的消息,无需用户自己维护它的消失。

如果只是提示简单的信息,使用Android为Toast提供的两个静态的方法最为方便,它们会返回一个Toast对象,如果需要显示,只需要调用show()方法显示即可,下面是这两个方法的签名:

  • static Toast makeText(Context context,int resId,int duration).
  • static Toast makeText(Context context,CharSequence text,int duration)

上面两个方法,参数大致相同,一个上下文对象Context,一个显示的消息来源,一个设置持续时间。消息来源可以指定String资源,使用<string…/>标签在XML资源文件中定义,还可以指定一个字符串用于消息展示。最后的duration参数设置了Toast的持续时间,一般使用Toast自带的两个整形的常量:LENGTH_LONG(1,时间稍长)、LENGTH_SHORT(0,时间稍短),针对不同的使用场景,选择不用的持续时间。

Toast消息的默认显示位置在屏幕的中间偏下,Android也为开发者提供了方法设置Toast消息的位置,使用setGravity(int gravity, int xOffset, int yOffset)方法即可设置,它有三个参数,gravity设置一个重力方向,另外两个设置水平和垂直方向的偏移量

 

接下来介绍toast的三种效果

1.默认效果:

代码:

Toast.makeText(getApplicationContext(), "默认Toast样式",
     Toast.LENGTH_SHORT).show();

2.自定义显示位置效果:

代码:

toast = Toast.makeText(getApplicationContext(),
     "自定义位置Toast", Toast.LENGTH_LONG);
   toast.setGravity(Gravity.CENTER, 0, 0);
   toast.show();

 

 

自定义消息

无论是从美观的角度、还是用户视觉体验的角度,很多时候都不仅仅需要显示一简单的文本信息。如果需要显示用户自定义的消息,那么就不能使用上面介绍的静态方法来得到一个Toast对象,而是需要使用Toast的构造方法进行初始化,然后对相应的属性进行设置。一般对于自定义布局的显示,会使用XML定义好一个布局文件,这样清晰明朗。

步骤如下:

  1. 使用LayoutInflater.from(Context).inflate(int , ViewGroup)方法动态获得需要显示的View。
  2. 对View中的控件进行必要操作。
  3. 使用构造函数初始化Toast。
  4. 使用Toast.setView(View)进行设置。
  5. 最后使用show()方法展示Toast消息。

下面通过一个示例展示自定义布局在Toast中的显示:

Toast消息的布局代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toast_layout_root"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="8dp"
android:background="#DAAA"
>
<ImageView android:src="https://blog.csdn.net/bzlj2912009596/article/details/72457146/@drawable/ic_launcher"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="8dp"
/>
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFF"
/>
</LinearLayout>

 

Toast消息的显示代码:

btnCustomToast.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
View view=LayoutInflater.from(MainActivity.this).inflate(R.layout.toast_layout,null    );
TextView tv=(TextView)view.findViewById(R.id.text);
tv.setText("自定义提示Toast");
Toast toast=new Toast(MainActivity.this);
toast.setView(view);
toast.show();
}
});

效果展示:

 

这是在网上搜索到的toast的资料的整理的,大家有兴趣自己可以去查找资料。

 

android toast的使用就讲完了。

 

就这么简单。

人已赞赏
Android文章

android textView设置粗体

2020-4-11 5:16:50

Android文章

android 解决小米手机上选择照片路径为null的问题

2020-4-11 6:31:49

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索