2011-07-09 4 views
2

私はスタートアップ時に大きなリモートxmlファイルを読み込むチタニウムでアプリケーションをビルドしています。これは、通常のDefault.pngスプラッシュ画面を表示し、ウィンドウに到達して読み込み中であることを示します。しかし、私がやりたいことは、xmlが完全に読み込まれるまでスプラッシュスクリーンをつけることです。チタニウムを使ったiPad/iPhoneのスタートアップの表示

今、このための私のアプローチは、私はそうのような画像としてDefault.pngと、開始時にImageViewのを作成し、非常に簡単です:

var startupView =Titanium.UI.createImageView({ 
image: 'iphone/Default-Portrait.png', 
opacity:1, 
zIndex:2 
}); 

とxhr.onload機能は意味(トリガされますxmlファイルが完全にロードされている)は、私が行うことで、このスタートアップビューをフェードアウト:これは正常に動作し、すべてが、私は持っている問題は、異なるプラットフォームごとに異なるスプラッシュ画面のサイズがあること、である

var startupAnimation = Titanium.UI.createAnimation({ 
curve:Ti.UI.ANIMATION_CURVE_EASE_OUT, 
opacity:0, 
delay: 0, 
duration:300 
}); 
startupView.animate(startupAnimation); 

。そして、これまで私が作成しているアプリは両方のプラットフォームでうまく動作します。 ipadでは、スクリーンは明らかに大きく、iPhone 4では、網膜ディスプレイもiPhone 3gsなどに比べて大きいので、このコードをいたるところでうまく動作させるために何かを考え出す必要があります。

私はif (Titanium.Platform.osname == "iphone") {とチェックし、iphone用の小さなサイズのスプラッシュ画面をイメージビューに読み込もうとしましたが、何とかその下の「実際の」スプラッシュ画面と同じではありません。このため、ユーザーは最初のスプラッシュ画面と偽のスプラッシュ画面が移動していることを確認します。それは、チタンによってロードされたデフォルトのスプラッシュ画面がDefault.pngと同じではないようですが、Default-Portrait.pngです(これはipadでのみ使用する必要があります)

これがすべてクリアかどうかわかりませんここで誰かが私と一緒に考えることができるかどうか、しかしどんな考えも大いに評価されるだろう。

答えて

1

私は同じことをTitanium iPadアプリでやっています。ステータスバーが表示されているトップ20pxを使わずに自分の「スプラッシュスクリーン」イメージを作成する必要があることがわかりました。チタンアプリはフルスクリーンで起動できるので、Default-Portrait.pngはフルスクリーンであることが前提です。フルスクリーンでないアプリでDefault-Portrait.pngビューを追加すると、それは20ピクセル下にシフトし、その 'シフト'エフェクトがユーザーに表示されます。

iPhoneとiPadで動作しているので、おそらくiPadとiPhone用の新しいスプラッシュ画面を作成する必要があります。私は、iPhone 4の「偽の」画像を非網膜ディスプレイにも使用できると思って、チタニウムにサイズ変更を処理させてもらいました。

+0

これはトリックでした!言及する価値があるのは、(複製された)Default.pngファイルの先頭20pxの代わりに40pxをカットする必要があったことだけです。おそらく、網膜の表示のためです。ありがとう、相棒! – dandoen

関連する問題