第一个activity相当于一个广告logo  我显示完之后自动跳转到主游戏界面,这部分该怎么写能实现,线程试过了没成功!最好给出详细代码,在线等!!!

解决方案 »

  1.   

    定个时间么,然后时间到了用intent触发另外一个activity
      

  2.   

    用handler,然后调用startactivity调用主界面。
      

  3.   

    第一种方法(使用timer)用时间延迟:
    Timer timer = new Timer();  
    timer.schedule(new MyTask(), *); --*是delay的时间 private class MyTask extends TimerTask{  
     @Override  
     public void run() {  
     
     Intent intent = new Intent(logo.this, mian.class);
     .....结束当前的logo页面,跳到主页面
     }
    第二种方法(使用handler)利用message处理事件:
    当你在oncreate方法中执行完后写Message message = new Message();  
     message.what = 1;  
     mHandler.sendMessage(message);  写这个方法的目的是告诉handler你现在页面显示完了,可以进行新的主线程了。然后再handler中接受消息,结束当前页面,跳到主页面
    还有其他的方法,比如广播等,lz可以自己研究下,不过我上面说的方法最简单了。
      

  4.   

    不用用service啊,定时器啊什么的,。。以前搞过的貌似直接把作为log的activity添加一个动画事件,具体操作请看setAnXX单词忘了。类似于一个几秒钟的过场动画然后自动跳转了。。
      

  5.   

    几行代码参考下吧
    AlphaAnimation aa=new AlphaAnimation(0.1f, 1.0f);//定义了一个alpha动画
    aa.setDuration(3000);//3秒过场
    im.setAnimation(aa);
    //设置一个动画监听,动画结束后跳转到下个界面
    aa.setAnimationListener(new AnimationListener() {

    @Override
    public void onAnimationStart(Animation animation) {
    }

    @Override
    public void onAnimationRepeat(Animation animation) {
    }
    //动画结束;
    @Override
    public void onAnimationEnd(Animation animation) {
    Intent intent=new Intent(StartLogActivity.this,
    LoginActivity.class);
    StartLogActivity.this.startActivity(intent);
    finish();
    }
    });
      

  6.   

    用Intent 或者Tween动画都行  设置动画渐变最好 设置setDrua。。(3000);--》这是设置渐变时间 
      

  7.   

    用handler,可是实现!也就是说当你运行完了,用handler发个消息告诉它,让它执行下一步!还有一种是把你这个logo制作成欢迎动画,当动画完成了,就自动加载,游戏界面!当然还有其他的,比如定时之类的!但是觉得最好用handler.因为它可以实现一连串的界面加载!只要一个界面完成后,发送一个消息,就加载另一个!
      

  8.   

    new Handler().postDelayed(new Runnable() {

    @Override
    public void run() {
    Intent toMyPlayerIntent=new Intent(PlayerCover.this, MyPlayerActivity.class);
    PlayerCover.this.startActivity(toMyPlayerIntent);
    PlayerCover.this.finish();

    }
    }, 3000);