4

下部にタブ バーがある新しいアプリケーションをセットアップしました。以下はviewDidAppear:私のルートView Controllerの方法です:

- (void)viewDidAppear:(BOOL)animated
{
    self.tabBarController.tabBar.alpha = 0.0f;

    [UIView animateWithDuration:10.0f delay:0 options:UIViewAnimationOptionBeginFromCurrentState animations:^{
        self.view.backgroundColor = [UIColor redColor];
        self.tabBarController.tabBar.alpha = 1.0f;
    } completion:nil];
}

私が観察したのは、ビューが表示されるとすぐに、alpha = 1.0f. 私はそれがで始まりalpha = 0.0f、それからフェードすることを期待していalpha = 1.0fます。一方、背景はフェードしてbackgroundColor予想どおり赤くなります。

をフェードしようとすると、同じことが起こりUIToolbarます。

4

1 に答える 1

5

UIToolbar の親ビュー レイヤーの allowGroupOpacity を NO に設定します。iOS 7 の新機能であるため、チェックを追加します。できれば viewDidLoad で:

if([self.view.layer respondsToSelector:@selector(setAllowsGroupOpacity:)]) {
    self.view.layer.allowsGroupOpacity = NO;
}
于 2014-01-14T23:24:11.083 に答える