zoukankan      html  css  js  c++  java
  • Android---自动启动方法

    Timer timer = new Timer();
            TimerTask timerTask = new TimerTask() {
                @Override
                public void run() {
              Intent intent = new Intent(MainActivity.this, StartActivity.class);  //例如这个1秒后自动跳转
              startActivity(intent);
              finish();

          }
         };
    timer.schedule(timerTask,
    1000);//1秒后自动运行run方法。

      某一些不太好自启动,假设一个Activity一打开立马弹出一个Dialog,我想出了这个方法间接实现。(利用performClick()属性模拟人点击

    
    
    public class MainActivity extends Activity {

    Button button;
    int i=0;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            button = (Button) findViewById(R.id.button);
            button.setOnClickListener(new View.OnClickListener() {  //按钮单击事件
                @Override
                public void onClick(View v) {
    
                    AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create(); //自定义的Dialog 此处主要讲自动启动,Dialog的XML就不贴出来了
                    alertDialog.show();
                    Window window = alertDialog.getWindow();
                    window.setContentView(R.layout.inter_dialoglayout);
                    final Button noBtn = (Button) window.findViewById(R.id.inter_button_no);
                    final Button yesBtn = (Button) window.findViewById(R.id.inter_button_yes);
                    noBtn.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            Intent intent = new Intent(MainActivity.this, StartActivity.class);
                            startActivity(intent);
                            finish();
                        }
                    });
                    yesBtn.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                          
                        }
                    });
                    alertDialog.setCancelable(false);    //设置屏蔽其他控件焦点
                }
    
            });
       
            if (i == 0) {
                button.performClick();  //模拟点击事件
                i++;
            } //这个Dialog只允许触发一次
        }
    }

    应该还有更好的方法,欢迎交流,本人初学勿怪。

  • 相关阅读:
    Erlang 杂记 IV
    ASP.NET MVC的View是如何被呈现出来的?[设计篇]
    面向对象—在线文件管理模块
    软件开发中个人在团队里的效绩评定
    用go语言遍历文件夹
    磁盘缓存的算法:写算法
    一种Lua到C的封装
    从信息系统界面设计引发的思考
    基于Backbone.js的JavaScript MVC示例程序
    C和C++
  • 原文地址:https://www.cnblogs.com/infernofranz/p/5918304.html
Copyright © 2011-2022 走看看