• Toast用法


    应用场景:弹出提示信息

    主界面:

    代码如下:

     @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            init();
        }
        private void init()
        {
            defaultToastBtn = (Button) findViewById(R.id.defaultToastBtn);
            customLocationBtn = (Button) findViewById(R.id.customLocationBtn);
            imageToastBtn = (Button) findViewById(R.id.imageToastBtn);
            customToastBtn = (Button) findViewById(R.id.customToastBtn);
            otherThreadBtn = (Button) findViewById(R.id.otherThreadBtn);
            
            defaultToastBtn.setOnClickListener(this);// 设置监听
            customLocationBtn.setOnClickListener(this);
            imageToastBtn.setOnClickListener(this);
            customToastBtn.setOnClickListener(this);
            otherThreadBtn.setOnClickListener(this);
        }

    1.默认样式的Toast

    代码如下:

    Toast.makeText(getApplicationContext(), "默认样式的Toast", Toast.LENGTH_SHORT).show();// 显示时间较短

    2.自定义位置的Toast

    代码如下:

    Toast toast = Toast.makeText(getApplicationContext(), "自定义位置 的Toast", Toast.LENGTH_LONG);//显示时间较长 
    toast.setGravity(Gravity.CENTER, 0, 0);
    // 居中显示
    toast.show();

    3.带图片的Toast

    代码如下:

    Toast toast = Toast.makeText(getApplicationContext(), "带图片的Toast", 3000);// 显示时间也可以是数字
    toast.setGravity(Gravity.TOP, 0, 0);// 最上方显示
    LinearLayout toastLayout = (LinearLayout) toast.getView();
    ImageView imageView = new ImageView(getApplicationContext());
    imageView.setImageResource(R.drawable.icon);
    toastLayout.addView(imageView, 0);// 0 图片在文字的上方 , 1 图片在文字的下方
    toast.show();

    4.完全自定义的Toast

    代码如下:

    LayoutInflater inflater = getLayoutInflater();// LayoutInflater对象
    View layout = inflater.inflate(R.layout.custom_view, null);
    ImageView imageView = (ImageView) layout.findViewById(R.id.imageView);
    TextView text = (TextView) layout.findViewById(R.id.textView);
    imageView.setImageResource(R.drawable.icon);
    text.setText("完全自定义的Toast");
    Toast toast = new Toast(getApplicationContext());
    // 底部 、水平居中,X偏移50 Y偏移50
    toast.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM, 50, 50);
    toast.setDuration(Toast.LENGTH_SHORT);
    toast.setView(layout);
    toast.show();

    5.来自其他线程的Toast

    代码如下:

    handler = new Handler();
    new Thread(new Runnable()
    {
        public void run()
            {
                show();
            }
    }).start();
    private void show()
    {
        handler.post(new Runnable()
        {
            @Override
            public void run()
    { Toast.makeText(getApplicationContext(),
    "Hello,I come from other thread!", 5000).show(); } }); }

    注:getApplicationContext()  表示它的生命周期是整个应用,应用摧毁它才被摧毁。 

  • 相关阅读:
    洛谷 P1064 金明的预算方案
    洛谷 P2015 二叉苹果树
    洛谷 P1471 方差
    洛谷 P1198 [JSOI2008]最大数
    js字符串中的比较类以及截取类substring实例
    字符串indexOf()的用法
    fromCharCode返回字符串以及字符串加密
    字符串获取类、封装检测数字的方法
    原生js解决倒计时结束图片抖动之后移动消失的效果
    原生js解决图片渐渐变透明的效果
  • 原文地址:https://www.cnblogs.com/renqingping/p/Toast.html
Copyright © 2020-2023  润新知