我有一个主视图UIViewController
。在该视图中,将一个UIView
名称的loginview设置为小尺寸(self.loginview.frame = CGRectMake(4,166,306,153);
在mainview uiviewcontroller我按下一个按钮,如果我点击那个按钮loginview想显示像弹出窗口...我怎么能实现这个帮助我在这里代码。
- (IBAction)Regbtn_click:(id)sender
{
//in this place i want to write the code for login view want come like popup.. help me..
loginview.hidden=false
}
答案 0 :(得分:0)
不是设置loginview的隐藏属性,而是将其alpha设置为0.0,并且可以使用此动画
-(IBAction)Regbtn_click:(id)sender {
//[self.view addSubview:self.loginView]; if your loginview is not added to view, if it is, ignore this line
[UIView animateWithDuration:0.5 animations:^{
self.loginView.alpha = 1.0; //to display loginview
} completion:^(BOOL finished) {
}];
}
答案 1 :(得分:0)
您可以使用两个动画为视图设置动画:
1)缩放
2)褪色
View Controller
->Button (Viewcontroller Child)
->LoginWrapperView (Viewcontroller Child)
->black-transparent View (LoginWrapperView Child)
->login View (LoginWrapperView Child)
在屏幕上方添加黑色半透明视图(我认为不透明度为0.2),然后将loginView设置为不透明度,并将其不透明度设置为0。
[LoginWrapperView SetHidden:YES];
[loginView SetAlpha:0];
[loginView SetFrame:CGRectMake(0,0,0,0)];
现在,当您点击按钮时,
[LoginWrapperView SetHidden:NO];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.2];
[UIView setAnimationDelegate:self];
//position on screen
[loginView SetAlpha:1];
[loginView SetFrame:<your CGRect goes here>];
[UIView setAnimationDidStopSelector:@selector(finishAnimation:finished:context:)];
//animate off screen
[UIView commitAnimations];
然后在半透明视图上处理Tap Getsture,通过反转具有不同值的相同动画来关闭或隐藏相同的动画。
答案 2 :(得分:-2)
您可以以模态方式推送视图,也可以使用像MZFormSheetController这样的好库。 Here's how it looks like
只是简单地展示你的观点。您还可以使背景透明化以及许多其他自定义。
YourPopupViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"PopupView"];
-(IBAction)buttonClick{
// present form sheet with view controller
[self mz_presentFormSheetController:vc animated:YES completionHandler:^(MZFormSheetController *formSheetController) {
//do your login stuff
}];
}