2011-12-29 3 views
0

こんにちはたいが、私のブラックベリーのアプリケーションにスプラッシュ画面を追加し、私はhereからコードを修正し、これにそれを修正:
スプラッシュブラックベリー

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からのコード)が、私は常にキャッチされないランタイム例外スプラッシュ画面は、単にあなたのコンストラクタでこれを使用するために

答えて

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(); 

このスレッドの前にすべてを画面に追加してください。それはあなたのために働くことを願って..

+0

すてきで清潔、ありがとうスワーティ – Mehdi