2014-11-05 114 views
0

我环顾四周,我似乎无法弄清楚这一点。在视图顶部呈现新的半透明的视图

我只是想显示在另一个之上的观点,但从另一个VC,并在故事板

这个视图的“主意”是一种弹出式/提醒,它最终需要一个集合视图和多个按钮。所以我想我只是用另一个VC来做到这一点,因为我需要在应用程序的许多地方“弹出”。

现在,我可以做到这一点,但我的看法是不透明的(即使我的阿尔法设置正确),所以我猜测“下”视图实际上已经消失了,我只是做了一个常规“继续”使用不同的方法。所以我卡住了。

,我不能只是复制粘贴整个VC类无处不在我需要它,所以我可以“addsubview”这......

任何想法?

这是我在做什么:

AddFeelingViewController *adf = (AddFeelingViewController *)[self.storyboard instantiateViewControllerWithIdentifier:@"AddFeelingViewController"]; 

adf.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 
[self presentViewController:adf animated:YES completion:nil]; 

的观点出现,我可以互动,但因为它是非常小的,我只是需要一个“透明背景”我还没有。此外,我打算有一个全屏按钮,删除视图。经典的“点击某处取消”按钮类型。

任何帮助非常感谢!

回答

1

你应该在Github上检查这个项目,它正是你需要的“自定义过渡”。

https://github.com/schneiderandre/popping

而且,利用Facebook的流行动画引擎创建的。

+0

这看起来正是我所需要的。 如何在不使用豆荚的情况下将其添加到我的项目中?我不知道要导入什么...... – 2014-11-05 11:27:06

+0

我只在我的项目中使用了自定义转换,我导入了:ManuallyViewController.h/m,DismissingAnimator.h/m,PresentingAnimator.h/m和UIColor + CustomColors.h /米..没有必要为豆荚。 :) – RJiryes 2014-11-05 11:29:17

+0

忘掉ManuallyViewController.h/m,它的ModalViewController。我改了名字,忘了编辑。 – RJiryes 2014-11-05 11:38:41

0

这是一种方式来获得Alpha值,但你可以代替呈现的viewController,你可以简单地把它添加到当前视图与阿尔法值一起子视图,如下图所示: -

-(IBAction)newView:(id)sender { 
    demoVc = (YOUR_VIEW_CONTROLLER *)[self.storyboard instantiateViewControllerWithIdentifier:@"identifier"]; 

    demoVc.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 
    [demoVc.view setAlpha:0.3]; //Set alpha value 

    // [self presentViewController:demoVc animated:YES completion:nil]; 

    [self.view addSubview:demoVc.view]; 
} 

还删除您可以简单地创建一个IBAction方法,将其从超级视图中移除。

+0

嗯,我会试试:) – 2014-11-05 10:49:45

+0

这也产生了一些问题: 我不需要我的整个视图是透明的,只是用户可以点击removeFromSuperview的外边框。这里一切都是透明的,不可能的。 我试着减小VC的大小(因此视图的大小)只有不透明的部分,但它只是填补其余空白,我的主视图仍然隐藏在它后面 – 2014-11-05 11:06:47

+0

为透明度,你可以改变值的alpha值从0.3到0.5。你也可以分享一个屏幕截图,究竟你需要它是什么样子,因为我无法弄清楚。 – nikhil84 2014-11-05 12:26:44

相关问题