• android toast使用方法


    1.默认展示

        // 第一个参数:当前的上下文环境。可用getApplicationContext()或this 
        // 第二个参数:要显示的字符串。也可是R.string中字符串ID 
        // 第三个参数:显示的时间长短。Toast默认的有两个LENGTH_LONG(长)和LENGTH_SHORT(短),也可以使用毫秒如2000ms 
        Toast toast=Toast.makeText(getApplicationContext(), "默认的Toast", Toast.LENGTH_SHORT); 
        //显示toast信息 
        toast.show(); 

    2.自定义显示位置

        Toast toast=Toast.makeText(getApplicationContext(), "自定义显示位置的Toast", Toast.LENGTH_SHORT); 
                //第一个参数:设置toast在屏幕中显示的位置。我现在的设置是居中靠顶 
                //第二个参数:相对于第一个参数设置toast位置的横向X轴的偏移量,正数向右偏移,负数向左偏移 
                //第三个参数:同的第二个参数道理一样 
                //如果你设置的偏移量超过了屏幕的范围,toast将在屏幕内靠近超出的那个边界显示 
                toast.setGravity(Gravity.TOP|Gravity.CENTER, -50, 100);  
                //屏幕居中显示,X轴和Y轴偏移量都是0 
                //toast.setGravity(Gravity.CENTER, 0, 0);  
                toast.show(); 

    3.带图片的

        Toast toast=Toast.makeText(getApplicationContext(), "显示带图片的toast", 3000); 
            toast.setGravity(Gravity.CENTER, 0, 0);  
            //创建图片视图对象 
            ImageView imageView= new ImageView(getApplicationContext()); 
            //设置图片 
            imageView.setImageResource(R.drawable.ic_launcher); 
            //获得toast的布局 
            LinearLayout toastView = (LinearLayout) toast.getView(); 
            //设置此布局为横向的 
            toastView.setOrientation(LinearLayout.HORIZONTAL); 
            //将ImageView在加入到此布局中的第一个位置 
            toastView.addView(imageView, 0); 

    4.完全自定义显示方式

    1. toast.xml布局

    <ImageView
            android:id="@+id/image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical" >
    
            <TextView
                android:id="@+id/title"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
    
            <TextView
                android:id="@+id/content"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
    
        </LinearLayout>

    2.activity代码

    public class ToastActivity extends Activity {
        private Button bt;
        private ImageView image;
        private TextView title, content;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            bt = (Button) findViewById(R.id.bt);
            bt.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    showToast();
                }
            });
        }
    
        private void showToast() {
            LayoutInflater inflater = getLayoutInflater();
            View view = inflater.inflate(R.layout.toast, null);
            image = (ImageView) view.findViewById(R.id.image);
            title = (TextView) view.findViewById(R.id.title);
            content = (TextView) view.findViewById(R.id.content);
            image.setBackgroundResource(R.drawable.ic_launcher);
            title.setText("自定义toast");
            content.setText("hello,self toast");
            Toast toast = new Toast(getApplicationContext());
            toast.setGravity(Gravity.CENTER, 0, 0);
            toast.setDuration(Toast.LENGTH_SHORT);
            toast.setView(view);
            toast.show();
        }
    
    }

    5.其他线程通过Handler的调用

    //调用方法1 
        //Thread th=new Thread(this); 
        //th.start(); 
        //调用方法2 
        handler.post(new Runnable() { 
            @Override 
            public void run() { 
                showToast(); 
            } 
        }); 
     
    Java代码
    public void showToast(){ 
            Toast toast=Toast.makeText(getApplicationContext(), "Toast在其他线程中调用显示", Toast.LENGTH_SHORT); 
            toast.show(); 
        } 
     
    Java代码
    Handler handler=new Handler(){ 
            @Override 
            public void handleMessage(Message msg) { 
                int what=msg.what; 
                switch (what) { 
                case 1: 
                    showToast(); 
                    break; 
                default: 
                    break; 
                } 
                 
                super.handleMessage(msg); 
            } 
        }; 
     
    Java代码
    @Override 
        public void run() { 
            handler.sendEmptyMessage(1); 
        }
  • 相关阅读:
    Python统计词频的几种方式
    GO语言系列之 基本数据类型和操作符
    GO语言系列之 初识go语言
    Python实现聚类算法AP
    最大似然估计
    Breastcancer社区评论下载
    数据可视化之pyecharts
    Requests库
    nginx内置变量
    Tomcat内部结构、工作原理、工作模式和运行模式
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4195163.html
Copyright © 2020-2023  润新知