2011-12-29 3 views
0

Привет я хочу добавить в SplashScreen моей Blackberry Application, я изменил код из here и модифицировали его к этому:
SplashScreen На Blackberry

package main; 
import net.rim.device.api.ui.*; 
import net.rim.device.api.ui.component.*; 
import net.rim.device.api.ui.container.*; 
import net.rim.device.api.system.*; 

import java.util.*; 

public class SplashScreen extends MainScreen { 
    private UiApplication application; 
    private Timer timer = new Timer(); 
    private static final Bitmap _bitmap = Bitmap.getBitmapResource("SPlachS.png"); 
    public SplashScreen(UiApplication ui) { 
     super(Field.USE_ALL_HEIGHT | Field.FIELD_LEFT); 
     this.application = ui; 
     this.add(new BitmapField(_bitmap)); 
     SplashScreenListener listener = new SplashScreenListener(this); 
     this.addKeyListener(listener); 
     timer.schedule(new CountDown(), 5000); 
     application.pushScreen(this); 
    } 
    public void dismiss() { 
     timer.cancel(); 
     application.popScreen(this); 
     application.pushScreen(new MyScreen()); 
    } 
..... 


Я просто изменил конструктор и все (я также пытался код из here), но я всегда имея Uncaught время выполнения Exception

ответ

8

Для заставка просто использовать это в конструкторе ..

Thread th = new Thread() 
     { 
      public void run() 
      { 
       try 
       { 
        Thread.sleep(2000); 
       } catch (Exception ex) 
       { 
       } 
       UiApplication.getUiApplication().invokeLater (new Runnable() 
        { 
         public void run() 
         { 
          UiApplication.getUiApplication().pushScreen(newScreen); 
          close(); 
         } 
        } 
       ); 
      } 
     }; 
     th.start(); 

добавить все на экран перед этой нитью .. Я попробовал. надеюсь, что он будет работать для u ..

+0

приятный и чистый, спасибо Swati – Mehdi

Смежные вопросы