2011-08-11 77 views
0

我想知道如何能夠實現全屏幕內部陰影效果,類似於UIAlertView彈出時。是否有捷徑可尋?是否有一個API可以調出iOS中警報的陰影部分?順便說一下,這是針對iOS 4.0及更高版本的。全屏幕內部影子iOS

回答

0

您可以在Photoshop中創建一個部分透明的圖像,並將其添加爲子視圖。類似這樣的:

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"inner-shadow.png"]]; 
[self.view addSubview:imageView]; 
0

無需增加應用的資產大小,您可以創建一個簡單的UIView。

UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow]; 

UIView *fullscreenShadow = [[UIView alloc] initWithFrame:keyWindow.bounds]; 
fullscreenShadow.backgroundColor = [UIColor blackColor]; 
fullscreenShadow.alpha = 0.3; 
[keyWindow addSubview:fullscreenShadow]; 

將它添加到keyWindow將使它覆蓋一切,除了UIStatusBar當然。我相信這將實現您的預​​期結果。將它與一個UIViewAnimation結合起來並將其提升。

0

下面的代碼將添加陰影,我們認爲你的方式使用它:

[self.yourView.layer setShadowColor:[UIColor blackColor].CGColor]; 
[self.yourView.layer setShadowOpacity:0.8]; 
[self.yourView.layer setShadowRadius:3.0]; 
[self.yourView.layer setShadowOffset:CGSizeMake(2.0, 2.0)];