我有一個共享頁面的簡短介紹,其中包括點擊共享按鈕和模態視圖在頂部顯示一些共享功能。模態視圖透明背景 - 停止低層隱藏?
我的問題是,我希望模態視圖的背景是半透明的,因此顯示下方的視圖。我已經設置了模態圖層的背景屬性,當模態出現時,下面的圖層可以簡單地看到 - 並且看起來完全符合我的要求 - 但是一旦封面過渡完成,背景視圖就會隱藏 - 是否有任何方法這個?
(使用IOS7的方式)
乾杯
更新 - @Tommaso Resti慷慨地幫助我嘗試和推測這個問題了 - 解釋什麼,我這樣做的遠 - 我的主故事板包含一個未鏈接的uiview,標識符爲'ShareScreenView' - 我想在單擊按鈕時將其添加到我的mainView中作爲透明模式。我已鏈接按鈕作爲IBAction爲和增加了以下我的方法 -
- (IBAction)shareBtn:(id)sender {
NSLog(@"clicked");
/* Create your view off the screen (bottom) */
/* NEW EDIT */
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main_iPhone"
bundle: nil];
UIViewController *myModalController = [mainStoryboard instantiateViewControllerWithIdentifier:@"ShareScreenView"];
[myModalController.view setFrame:CGRectMake(0, 568, 320, 568)];
// [myModalController.view setFrame: CGRectMake(0, [[UIScreen mainScreen].bounds.size.height], [[UIScreen mainScreen].bounds.size.width], [[UIScreen mainScreen].bounds.size.height])];
/* Animate it from the bottom */
[UIView animateWithDuration:.5 animations:^{
CGAffineTransform move = CGAffineTransformMakeTranslation(0, -[UIScreen mainScreen].bounds.size.height);
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
myModalController.view.transform = move; /* UPDATED HERE */
NSLog(@"Atrying");
} completion:^(BOOL finished) {
NSLog(@"Adid try");
if(finished) {
NSLog(@"Animation completed");
}
}];
}
,但我得到就行了一個錯誤 -
[myModalController.view SETFRAME:CGRectMake(0,[UIScreen mainScreen ] .bounds.size.height],[[UIScreen mainScreen] .bounds.size.width],[[UIScreen mainScreen] .bounds.size.height])];
其簡單地陳述「預期標識符」與高度的箭頭指示(見下文截屏)
所以我嘗試添加屬性如下 -
[myModalController.view setFrame:CGRectMake(0, 568, 320, 568)];
現在有沒有錯誤 - 但沒有任何反應,也沒有錯誤..
涼爽的歡呼聲 - 我可以用這個方法用故事板?我從來沒有用過Nibs! – Dancer
當然!使用 UIViewController * myModalController = [storyboard instantiateViewControllerWithIdentifier:@「MyModalController」];而不是UIViewController myModalController = [[UIViewController allor] initWithNibName:@「MyModalController」bundle:[NSBundle mainBundle]]; –
很酷的歡呼 - 一個問題 - 我得到一個錯誤,指出'在這一行UIViewController找不到屬性轉換 - myModalController.transform = move; – Dancer