2011-11-30 2 views
0

검은 색으로 페이드 아웃하는 동안 뷰 (XIB)를 전환하려고합니다. UIView 애니메이션을 사용하여이 작업을 수행해 왔으며 그렇게 유지하려고합니다. 문제는 뷰를 전환 할 때마다 검정색으로 페이드되지 않고, 다음 XIB로 직접 사라지는 것입니다.검은 색을 통해 XIB의 페이드를 전환 하시겠습니까?

어떻게하면 제대로 할 수 있습니까?

여기에 내 코드 (내 경우 self.view = view1.view하지만, 어쩌면 내가 그렇게 안)입니다을 :

[self.view setBackgroundColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:1.0]]; 
    [UIView animateWithDuration:0.4 
        animations:^{ 
         [view1.view setAlpha:0]; 
        } 
        completion:^(BOOL finished){ 
         [self.view.superview addSubview:view2.view]; 
         [view2.view setAlpha:0]; 
         [view2.view setFrame:CGRectMake(0, 0, 320, 480)]; 
         [UIView animateWithDuration:0.4 
              animations:^{ 
               [view2.view setAlpha:1]; 
              } 
              completion:^(BOOL finished){ 
               [view1.view removeFromSuperview]; 
              }]; 

감사합니다!

답변

1

자기가 생각하는 문제는 self.view의 배경색이 부분이 인 것입니다. 당신이보기를 희미하게 할 때, 그것도 배경을 페이드한다.

대신 항상 화면에 계속 표시되는 비어 있고 검은 색 배경색이며 뷰 1 또는 뷰 2 뒤에있는 뷰를 배치해야합니다.

+0

내 UIWindow의 색상을 설정해도 문제가 해결되지 않겠습니까? 하지만 실제로는 문제가되는 색상이 아니라 스위치보기의 실제 애니메이션입니다. 내 게시물에 그 문제를 설명했다. –

+0

코드를 약간 만 들었으므로 어쨌든 감사합니다! –

관련 문제