簡體   English   中英

使用Java計時器

[英]Using the java timer

到現在為止我一直使用的Timer這是在javax.swing.timer -所有我需要做的是選擇的速度和有執行什么,我希望定時器做的每一次具體的名稱的方法。

我現在已經開始對Android應用程序進行編程,並且遇到了一些問題...

  1. 它不會讓我使用或導入javax.swing.timer
  2. 我嘗試使用java.util.timer但無法弄清楚它是如何工作的

我想要定時器的唯一用途是可以顯示徽標3秒鍾,然后進入主菜單-即使有更簡單的解決方案,我仍然想知道如何使用定時器

對於告訴我嘗試使用線程的人-這是我的代碼-它根本不會繪制第一個屏幕,它會保持空白3秒鍾,然后繼續執行下一行代碼...

public class logo extends Activity {
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        try {
            setContentView(R.layout.logoview);
            Thread.sleep(3000); 
        }
        catch (InterruptedException e){
            e.printStackTrace();
        }

        setContentView(R.layout.main);
    }

    public void startup (View view){
        Intent intent0 = new Intent (this,ExpiramantingActivity.class);
        startActivity(intent0);}
    }
}

在SplashActivity類的onCreate()函數中,安排處理程序以在3秒后顯示您的主菜單活動。 這應該在setContentView(R.layout.splashscreen)之后完成;

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

                @Override
                public void run() {
                    startActivity(new Intent(SplashActivity.this,
                            YourMainMenuActivity.class));
                    finish();
                }
            }, 3000);

也許您可以使用線程? 我認為這是您要做的最簡單的方法:

顯示徽標的位置:

try {
    //show your logo here
    Thread.sleep(3000); //3 seconds
} catch (InterruptedException e) {
    e.printStackTrace();
}

由於Exception的可能性,將代碼包含在try / catch塊中非常重要。

我相信您要嘗試做的與展覽飛濺屏幕類似。 如果是這樣,請檢查此Oracle教程

嘗試這個:

// logo
Thread timer = new Thread(){
            public void run(){
                try{
                    sleep(3000);
                } catch (InterruptedException e){
                    e.printStackTrace();
                }
            }; 
        };
        timer.start();

//next code

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM