Как сделать так, чтобы программа для Android отображала макет, а затем несколько секунд. а на дисплее другой макет? - PullRequest
2 голосов
/ 23 июля 2010

Привет, ребята. Я просто хочу, чтобы программа отображала макет main0 и оставалась на несколько секунд, а затем отображала макет main1, как программы, которые мы видим в любом телефоне, где изображение или макет появляются в начале программы, а затем исчезают.

/**the main activity */

public class rdwt extends Activity implements OnClickListener{

Button b1;
Button b2;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main0);
    //Here
    setContentView(R.layout.main1);

    b1= (Button)findViewById(R.id.Button01);
    b2= (Button)findViewById(R.id.Button02);
    b1.setOnClickListener(this);
    b2.setOnClickListener(this);


}

    public void onClick(View v) {
        if (v==this.b1){
            Intent callwrite = new Intent(this, wto.class);              
            startActivity(callwrite);
        }

        if(v==this.b2){
            Intent callread = new Intent(this, rfr.class);               
            startActivity(callread);
        }

    }

}

Ответы [ 3 ]

0 голосов
/ 23 июля 2010

Вам необходимо прочитать техническую статью о Обновление интерфейса с таймера

0 голосов
/ 25 июля 2010

// Поместите следующую строку в ваш код.

   timer(3500); // Waits 3.5 seconds before moving on to the next activity.



   public void timer(int counter){ 
        new Handler().postDelayed(new Runnable(){
            @Override
            // counter is in milliseconds.
            public void run() {             
                Intent mainIntent = new Intent(THISCLASSNAME.this,CLASSNAMETOJUMPTO.class);
                startActivity(mainIntent);
                finish();  
0 голосов
/ 23 июля 2010

Я думаю, что есть два разных подхода.

1) используйте android.os.Handler и отправьте отложенное сообщение

2) используйте таймер и задачу таймера , чтобы обновить макет через определенное время

Пример кода:

TimerTask bla = new YourTask();
Timer timer = new Timer();
timer.schedule(bla, 1000);

А твой класс YourTask:

public class YourTask extends TimerTask {

   public void run() {
     updateYourLayout();
   }

}

Редактировать: Однако я думаю, что вы ищете заставку. Этот простой урок объясняет, как это сделать: http://www.anddev.org/simple_splash_screen-t811.html

...