ios 中的半屏幕底部弹出框

static UIView *modalView;if (modalView) {
        [modalView removeFromSuperview];
        modalView = nil;
        return;
    }

    CGRect screen = [[UIScreen mainScreen] bounds];
    CGRect bounds = CGRectMake(screen.origin.x, screen.origin.y, screen.size.width, screen.size.height/2);
    modalView = [[UIView alloc] initWithFrame:bounds];
    modalView.opaque = NO;
    modalView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.5f];

    UILabel *label = [[UILabel alloc] init];
    label.text = @"Modal View";
    label.textColor = [UIColor whiteColor];
    label.backgroundColor = [UIColor clearColor];
    label.opaque = NO;
    [label sizeToFit];
    [label setCenter:CGPointMake(modalView.frame.size.width / 2, modalView.frame.size.height / 2)];
    [modalView addSubview:label];

    [self.view addSubview:modalView];

若要从xib众加载UI的外观,则:

if (popupViewController) {
        [popupViewController.view removeFromSuperview];
        popupViewController = nil;
        return;
    }

    popupViewController = [[UIViewController alloc] initWithNibName:@"View" bundle:nil];
    [self.view addSubview:popupViewController.view];

如果需要从底部的动画向上slide in的动画:

UIView *popView = popupViewController.view;
    CGRect orig = popView.bounds;
    CGRect screen = [[UIScreen mainScreen] bounds];
    [popView setFrame:CGRectMake(0, screen.size.height, orig.size.width, orig.size.height)];
    [UIView beginAnimations:@"animatePopView" context:nil];
    [UIView setAnimationDuration:0.4];
    [popView setFrame:CGRectMake(0, screen.size.height-orig.size.height, orig.size.width, orig.size.height)];
    [UIView commitAnimations];
时间: 2025-01-09 18:05:01

ios 中的半屏幕底部弹出框的相关文章

JavaScript中的三种弹出框

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>JavaScript中的三种弹出框</title> 5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 6 <script type="text/JavaScript"> 7 funct

iOS开发- 自动消失的弹出框

- (void)timerFireMethod:(NSTimer*)theTimer//弹出框 { UIAlertView *promptAlert = (UIAlertView*)[theTimer userInfo]; [promptAlert dismissWithClickedButtonIndex:0 animated:NO]; promptAlert =NULL; } - (void)showAlert:(NSString *) _message{//时间 UIAlertView *

ASP.NET中的几种弹出框提示

B/S不像C/S那样一个MessageBox就可以弹出提示框,不过可以通过js的“Alert”来弹出消息,或者通过一些变种的js方法.下面我给大家介绍几种,希望大家喜欢. 四种弹出框代码: protected void Message_Click(object sender, EventArgs e) { //第一种 Response.Write("<script language=javascript>alert('第一种弹出框');</" + "scri

ASP.NET中的几种弹出框提示基本实现方法

我们在.NET程序的开发过程中,常常需要和用户进行信息交互,比如执行某项操作是否成功,"确定"还是"取消",以及选择"确定"或"取消"后是否需要跳转到某个页面等,下面是本人对常用对话框使用的小结,希望对大家有所帮助,同时也欢迎大家补充. (1) 点击页面上的按钮,弹出一个对话框提示是"确定"还是"取消"操作,我们采用在按钮中添加属性来完成: 举例如下: 复制代码代码如下: public

【分享】iOS功能界面漂亮的弹出框

STPopup 为 iPhone 和 iPad提供了 STPopupController UINavigationController 弹出的风格. 特性: Extend your view controller from UIViewController, build it in your familiar way. Push/Pop view controller in to/out of popup view stack, and set navigation items by using

Android 学习笔记之AndBase框架学习(二) 使用封装好的进度框,Toast框,弹出框,确认框...

PS:渐渐明白,在实验室呆三年都不如在企业呆一年... 学习内容: 1.使用AbActivity内部封装的方法实现进度框,Toast框,弹出框,确认框...   AndBase中AbActivity封装好了许多方法提供我们去使用,使得在使用的时候更加的方便,只需要传递相关参数即可..省去了我们自己使用基础的函数进行构造...   就好比进度框,Toast框,弹出框,确认框...这些基本的东西都在AndBase的AbActivity封装好了...我们只需要传递参数调用其中内部的方法就可以完成这些视

经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法

经验总结:WebBrowser自动点击弹出提示框alert.弹出对话框confirm.屏蔽弹出框.屏蔽弹出脚本错误的解决办法 网上有好多解决方法,可是不一定好使,本人经过多次试验,针对WebBrowser控件中自动点击弹出框及禁用脚本提示问题得到如下几种实际情况的解决办法,绝对管用. 1.屏蔽弹出错误脚本 将WebBrowser控件ScriptErrorsSuppressed设置为True即可. (参考本篇博客:http://www.cnblogs.com/qqflying/archive/20

robotframework 下对于web弹出框的处理

转发自:http://www.cnblogs.com/dreamyu/p/6877145.html 在web自动化测试中会遇到各种弹出框,在selenium中有对这些弹出框的处理. 弹出框一般有这么几类: 1.普通的弹出窗口,如果是可以定位的,直接定位到窗口,然后进行相应的操作. 2.如果是浏览器系统弹出框,alter类型的,可以使用方法: dr.switchTo().alert().accept();   或者dismiss(取消),记得在处理前先判断下是否有alter窗口,如果窗口出来的较慢

自制弹出框所踩的坑

项目中要做一个弹出框,弹出框里面有一个搜索框,弹出框背后有一个遮罩层,但是layer插件又不能适用中国业务场景, 要求是:点击搜索框本身弹出框不关闭,点击遮罩层阴影部分关闭弹出框 开始想的很简单,只要点击搜索框的父级就可以实现,实际结果是:点击搜索框的时候弹出框全部关闭. 通过思考发现以下方法可以完美解决次问题 htmllayer 为整个弹出框search-box 为搜索框 <div class="layer"> <div class="search-box