IBAction で新しい UIViewController を開く必要がある場合があります。この新しい UIViewController は透過的であるはずです。通常のモーダル遷移を行うと、古い UIViewController が非表示になります。これに関する提案はありますか?
1 に答える
1
目的のために、モーダル View Controllers ビュー プロパティにアルファを変更するように指示する必要があります。(View Controllerで行うのが最適ですviewDidLoad
)
次のように簡単です。
- (void) viewDidLoad
{
[self.view setAlpha:0.5];
}
もう 1 つの方法は、新しくUIView
追加されたビュー コントローラーをメイン ビュー コントローラーのサブビューとして使用することです。以下は、アニメーション化する方法を示しています。
UIView *myNewView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
[myNewView setAlpha:0.0];
[self.view addSubview:myNewView];
[UIView animateWithDuration:1.5 animations:^{
[myNewView setAlpha:0.5];
}];
編集:背景ビューのアルファを変更し、そのサブビューのアルファを保持するには、次のように設定してみてください。
[myNewView setBackgroundColor:[[UIColor blueColor] colorWithAlphaComponent:0.2]];
[myNewViewsSubView setBackgroundColor:[[UIColor redColor] colorWithAlphaComponent:1.0]];
于 2012-07-11T02:03:18.393 に答える