在一段时间后自动关闭窗口弹出窗口.怎么做

dev*_*oid 2 time android counter popup

我试图在几秒钟后用一些时间计数器自动关闭我膨胀的弹出窗口.我不知道怎么做计数定时器(5秒).

  LayoutInflater inflater = (LayoutInflater)screen.getSystemService(screen.LAYOUT_INFLATER_SERVICE);
                    layout =  inflater.inflate(R.layout.log_viewer,null);

                    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setCancelable(true);
                    builder.setView(layout);

                    AlertDialog alertDialog = builder.create(); 
                    alertDialog.show();

                    Button btn0= (Button)layout.findViewById(R.id.btn0);
                    Button btn1= (Button)layout.findViewById(R.id.btn1);
                    Button btn2= (Button)layout.findViewById(R.id.btn2);
                    btn0.setOnClickListener(new OnClickListener() {

                        @Override
                        public void onClick(View v) {

                            Intent i =new Intent(Main_Activity.this,Act.class);
                            startActivity(i);
                            overridePendingTransition(R.anim.animation,R.anim.animation2);
                        }
                    });  
                    btn1.setOnClickListener(new OnClickListener() {

                        @Override
                        public void onClick(View v) {

                            Intent i =new Intent(Main_Activity.this,Activity2.class);
                            startActivity(i);
                            overridePendingTransition(R.anim.animation,R.anim.animation2);
                        }
                    });  
                    btn2.setOnClickListener(new OnClickListener() {

                        @Override
                        public void onClick(View v) {

                            Intent i =new Intent(Main_Activity.this,Activity1.class);
                            startActivity(i);
                            overridePendingTransition(R.anim.animation,R.anim.animation2);
                        }
                    });  


                    WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
                    Window window = alertDialog.getWindow();
                    lp.copyFrom(window.getAttributes());

                    lp.width = WindowManager.LayoutParams.MATCH_PARENT;
                    lp.height = WindowManager.LayoutParams.WRAP_CONTENT;
                    window.setAttributes(lp);
Run Code Online (Sandbox Code Playgroud)

pmo*_*moo 5

您是否考虑过使用Toast自定义布局?有关示例,请参阅Android开发者网站上的Toast文档.

或者你可以使用 Handler

Handler handler = new Handler();
handler.postDelayed(new Runnable() {

    @Override
    public void run() {
        // close your dialog
        alertDialog.dismiss();
    }

}, 10000); // 10,000 ms delay
Run Code Online (Sandbox Code Playgroud)