0

私の問題は何とかスプラッシュスクリーンのようなものですが、もっと簡単な方法があることを知りたいです。

ここにシナリオがあります..

シンプルな XML ファイル (android 形式のページ) を 2 秒間だけ表示してから、他の XML ファイル (メイン ページ) を読み込むのが好きです。とにかく、クラスと長く複雑な方法を作成せずにそこにいるのだろうか。

スプラッシュ スクリーン ファイルが「splash_screen.xml」で、メイン ページが「result.xml」であるとします。

setContentView(R.layout.splash_screen) を 2 秒間実行すると、破棄され、setContentView(R.layout.result) がコンパイルされます。[擬似コード化された方法;)]

4

2 に答える 2

0

まず、1 つのアクティビティで setContentView を複数回呼び出すのは良くありません。

まあ、それほど複雑ではありません。スプラッシュ アクティビティをオープニング アクティビティにする必要があります。次に、スレッドを作成し、2 秒後に次のアクティビティを開始します。

1) メインクラス / スプラッシュ :

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.splash_screen);

    Thread t = new Thread(new Runnable() {

        public void run() {
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
            }finally{
                Intent i=new Intent(MainActivity.this,Result.class);
                startActivity(i);
                finish();
            }
        }
    });
    t.start();
}



}

2) 2等級・結果

public class Result extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.result);
}


}

最後に、マニフェスト ファイルに結果アクティビティを追加することを忘れないでください。

于 2014-06-30T13:11:57.717 に答える
0

次のコードを試してください:-

setContentView(R.layout.test2);
    try {
        Thread.sleep(2000);
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    setContentView(R.layout.activity_main);

これはあなたのために働くでしょう。

于 2014-06-30T12:59:54.810 に答える