Toast.makeText的几种常见用法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wpwbb510582246/article/details/52229482

在学习android开发时遇到了Toast.makeText,因为对其不太明白,所以从网上查阅了相关的资料并且将Toast.makeText的几种常见的用法总结如下:

一、Toast总述

Toast 是一个 View 视图,快速的为用户显示少量的信息。

Toast 在应用程序上浮动显示信息给用户,它永远不会获得焦点,不影响用户的输入等操作,主要用于 一些帮助 / 提示。

Toast 最常见的创建方式是使用静态方法 Toast.makeText。

二、Toast.makeText的几种常见的用法

1、默认Toast样式

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


2、自定义位置Toast

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


3、带图片的Toast

toast = Toast.makeText(getApplicationContext(), "带图片的Toast",
                    Toast.LENGTH_LONG);
            toast.setGravity(Gravity.CENTER, 0, 0);
            LinearLayout toastView = (LinearLayout) toast.getView();
            ImageView imageCodeProject = new ImageView(getApplicationContext());
            imageCodeProject.setImageResource(R.drawable.tu5503_4);
            toastView.addView(imageCodeProject, 0);
            toast.show();


4、完全自定义Toast

LayoutInflater inflater = getLayoutInflater();
            View layout = inflater.inflate(R.layout.custom,
                    (ViewGroup) findViewById(R.id.llToast));
            ImageView image = (ImageView) layout
                    .findViewById(R.id.tvImageToast);
            image.setImageResource(R.drawable.tu5503_5);
            TextView title = (TextView) layout.findViewById(R.id.tvTitleToast);
            title.setText("Attention");
            TextView text = (TextView) layout.findViewById(R.id.tvTextToast);
            text.setText("完全自定义Toast");
            toast = new Toast(getApplicationContext());
            toast.setGravity(Gravity.RIGHT | Gravity.TOP, 12, 40);
            toast.setDuration(Toast.LENGTH_LONG);
            toast.setView(layout);
            toast.show();


5、来自其他线程的Toast

new Thread(new Runnable() {
                public void run() {
                    showToast();
                }
            }).start();

showToast:

public void showToast() {
        handler.post(new Runnable() {

            @Override
            public void run() {
                Toast.makeText(getApplicationContext(), "我来自其他线程!",
                        Toast.LENGTH_SHORT).show();

            }
        });
    }



由于本人初写博客,写的不好的地方希望大家能批评指正,希望能和大家一起相互学习、相互交流、共同成长。

展开阅读全文

没有更多推荐了,返回首页