每日一记:Toast的使用

1. Toast的使用
今日见到 码农明明桑的Toast的使用详解感觉颇有收获,总结几点,供日后使用。

  • Toast的创建方式

    1. Toast.makeText(Context context, int resId, int duration); int resId:字符串的资源ID。
    2. Toast.makeText(Context context, CharSequence text, int duration);
      CharSequence text:直接是字符串。
  • 自定义设置Toast的view
    Toast toast = new Toast(this);
    toast.addView(yourView);

  • 自定义设置Toast的显示位置
    1.setGravity()方法
    toast.setGravity(int gravity, int xOffset, int yOffset);
    int gravity:决定了Toast的初始显示位置,但不是最终显示位置

    • Gravity.TOP:初始位置在屏幕垂直中轴线的最上面,但不会遮住通知栏。
    • Gravity.BOTTOM:初始位置在屏幕垂直中轴线最下面。
    • Gravity.LEFT:初始位置在屏幕水平中轴线最左边。
    • Gravity.Right:初始位置在屏幕水平中轴线最右边

int xOffset:决定了离初始显示位置的水平偏移量,单位是px,左负右正。
int yOffset:决定了离初始显示位置的垂直偏移量,单位是px,上负下正。
最终的显示位置由三个属性综合决定。
2.setMargin()方法
toast.setMargin(float horizontalMargin, float verticalMargin);
该方法的初始显示位置跟
Toast.makeText(Context context,CharSequence text, int duration);
的方式显示的Toast的位置是一样的
float horizontalMargin:以整个水平宽度的百分比左右位移,左负右正。
float verticalMargin:以整个垂直高度的百分比上下位移,上负下正。
可以通过设置这些属性方便地改变Toast的样式和位置。想到Android Material中有Snackbar这一个跟Toast很相似的东西,下次再做它的总结吧。

你可能感兴趣的:(每日一记:Toast的使用)