2012-09-24 100 views
0

我想創建一個透明的模態ViewController,它覆蓋當前的ViewController。我將backgroundcolor設置爲clearcolor,但背景爲黑色, ,因爲其他viewcontroller未顯示在新viewcontroller後面。我想要一個覆蓋像UIAlertView。iOS透明ViewController

我googeled了很多,唯一的解決方案,我發現是添加一個子視圖。 我正在使用iOS5。

+0

是,添加一個子視圖看來唯一可行的解​​決方案。 – ZhangChn

+0

發表一些代碼。你有什麼嘗試。爲什麼你不能使用clearview作爲子視圖的UIView? –

+0

我可以添加一個子視圖,但有一個控制器會更好,在我的情況下 – Maik639

回答

2

設置背景顏色清除您提供模型視圖後,將背景設置爲清晰,然後呈現將不起作用。

如果ü要呈現像UIAlertView中的視圖中使用這 -

CAKeyframeAnimation *animation = [CAKeyframeAnimation 
     animationWithKeyPath:@"transform"]; 

    CATransform3D scale1 = CATransform3DMakeScale(0.5, 0.5, 1); 
    CATransform3D scale2 = CATransform3DMakeScale(1.2, 1.2, 1); 
    CATransform3D scale3 = CATransform3DMakeScale(0.9, 0.9, 1); 
    CATransform3D scale4 = CATransform3DMakeScale(1.0, 1.0, 1); 

    NSArray *frameValues = [NSArray arrayWithObjects: 
     [NSValue valueWithCATransform3D:scale1], 
     [NSValue valueWithCATransform3D:scale2], 
     [NSValue valueWithCATransform3D:scale3], 
     [NSValue valueWithCATransform3D:scale4], 
     nil]; 
    [animation setValues:frameValues];//Courtesy zoul.fleuron.cz 

    NSArray *frameTimes = [NSArray arrayWithObjects: 
     [NSNumber numberWithFloat:0.0], 
     [NSNumber numberWithFloat:0.5], 
     [NSNumber numberWithFloat:0.9], 
     [NSNumber numberWithFloat:1.0], 
     nil];  
    [animation setKeyTimes:frameTimes]; 

    animation.fillMode = kCAFillModeForwards; 
    animation.removedOnCompletion = NO; 
    animation.duration = .2; 
    [self.backColor SETCOLOUR HERE]; 
    [self.layer addAnimation:animation forKey:@"uialertViewPopUP"]; 

U可以在乘坐willMoveToSuperView方法與上面給出的代碼。