Два разных заставки

РЕДАКТИРОВАНИЕ

По сути, я хочу сделать два загрузочных экрана для своих приложений. Первый всплывает только тогда, когда пользователь устанавливает приложение в первый раз, а второй экран-заставка обычно выглядит как логотип после первой загрузки приложения. Я попробовал этот кусок кода.

Я создал ActivityZero.java, чтобы сказать, использует ли пользователь приложение впервые, и использовал его на моем androidmanifest.xml.

Это код, который я использовал для ActivityZero

    SharedPreferences sharedPreferences = getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
    SharedPreferences.Editor editor;

    ActivityZero.this.finish();

    if(sharedPreferences.getBoolean("firstRun", true)){
        Intent mIntent = new Intent(ActivityZero.this, IsFirstTime.class);
        startActivity(mIntent);
        editor = sharedPreferences.edit();
        editor.putBoolean("firstRun", false);
        editor.commit();
    }else {
        startActivity(new Intent(ActivityZero.this, loadscreen.class));
        finish();
    }

И это его для моего заставки

       Thread timerThread = new Thread(){
        public void run(){
            try{
                sleep(3000);
            }catch(InterruptedException e){
                e.printStackTrace();
            }finally{
                Intent intent = new Intent(loadscreen.this,Calculator.class);
                startActivity(intent);
            }
        }
    };
    timerThread.start();

2 ответа

Вы должны начать деятельность из потока пользовательского интерфейса.

 runOnUiThread(new Runnable() {
     public void run() {
        //startActivity
     }
 });

С экрана загрузки на калькулятор, а затем вы идете калькулятор на экран загрузки. это заставляет ваш телефон зависать. это означает, что этот цикл будет продолжаться..

Другие вопросы по тегам