iPhoneの写真アプリからアニメーションを複製するにはどうすればよいですか
質問
画像表示機能を備えたアプリを構築しています。私はUiscrollview Beastを地面に取り組んでおり(Scrollview Knowledge RSNを投稿することを期待しています)、iPhone Photosアプリの他の視覚効果のいくつかを複製しようとしています。具体的には、画像を表示するときは、コントロールとバーを溶かしたいと思います。
ステータスバー、ナビゲーションバー、タブバーの可視性を切り替える方法があり、スクロールビューだけが画像を残します。 ScrollViewはフル画面です。ユーザーが何かを実行してから3秒後に発射するタイマー(画面を単一のタップ、次の画像を表示するなど)とタイマーファーフメソッドでは、メソッドを呼び出してバーをオフにします。画面の1回のタップがバーをオンにします。フルスクリーン状態を切り替える方法は次のとおりです。
- (void)setFullScreen:(BOOL)fullScreen {
// reset the timer
[myTimer invalidate];
[myTimer release];
myTimer = nil;
// start animation section
[UIView beginAnimations:nil context:nil];
// toggle the status bar
[[UIApplication sharedApplication] setStatusBarHidden:fullScreen animated:YES];
[UIView setAnimationDuration:UINavigationControllerHideShowBarDuration];
CGFloat alpha = fullScreen ? 0.0 : 1.0;
// change the alpha to either 0 or 1 based on hiding or showing the bars
self.navigationController.navigationBar.alpha = alpha;
self.tabBarController.tabBar.alpha = alpha;
// do the animations!
[UIView commitAnimations];
// restart the timer after we show the bars
if (!fullScreen) {
myTimer = [[NSTimer timerWithTimeInterval:3.0 target:self selector:@selector(timerFired:) userInfo:nil repeats:NO] retain];
[[NSRunLoop currentRunLoop] addTimer:myTimer forMode:NSDefaultRunLoopMode];
}
}
これは基本的に機能しますが、写真アプリほど良く見えません。これは、利用可能なアニメーションメソッドを使用するのではなく、写真アプリのように見えると信じているため、アルファ値をアニメーション化しています。私の問題は、ステータスバーについても同じことをしています。
私の質問:(1)ステータスバーにuiviewはありますか? (2)ステータスバーのアルファプロパティを変更する方法はありますか? (3)別のuiwindowのStatusbarですか? (4)「法的」方法を使用してこれを達成する別の方法はありますか(このアプリをApp Storeに入れる必要があります)?
uiapplicationのWindowsプロパティを捨てましたが、1つのウィンドウしかありませんでしたが、ビュー階層をrawったので、ステータスバーの明らかなビューはありませんでした。
何か案は?
解決
ステータスバーは、Springboard自体によって作成されます。クラスSbStatusbar(IIRCがUiwindowから継承)です。 App Storeアプリケーションにはアクセスできません。