1.name xib的名字 owner当前类对象 options初始参数

实际应用:

NSArray *nibs = [[NSBundle mainBundle] loadNibNamed:@"***" owner:self options:nil];

nibs[0]是当前view的对象  nibs[1]当前view的背景 ,我们可以在init中对当前frame以及当前view的背景的frame进行赋值, nibs[1]的背景是半透明的,如果当前的xib是View,把view添加到父对象的时候nibs[1]没有添加到父空间,则当前的view是全透明的,

举个例子:这个是我创建的xib

该xib对应的initWith

-(instancetype)initWithCancleButtonTitle:(NSString *)cancelTitle otherButtonTitle:(NSString *)otherTitle
{
CGRect frame = CGRectMake(0, 0, Main_Screen_Width-40, 180);
self = [super initWithFrame:frame];
if (self) { NSArray *nibs = [[NSBundle mainBundle] loadNibNamed:@"***" owner:self options:nil];
self = nibs[0];
self.frame = CGRectMake(0, 0, Main_Screen_Width-40, 180); coverView = nibs[1];
[self setUIController]; if (rect.size.height > 54) {
self.frame = CGRectMake(0, 0, Main_Screen_Width-40, 180);
}
[self.cancleButton setTitle:cancelTitle forState:UIControlStateNormal];
[self.otherButton setTitle:otherTitle forState:UIControlStateNormal];
}
return self;
}
-(void)setUIController{
coverView.frame = CGRectMake(0, 0, Main_Screen_Width, Main_Screen_Height);
coverView.backgroundColor = [UIColor redColor];
self.layer.cornerRadius = 4.0;
self.layer.masksToBounds = YES;
[self.cancleButton setTitleColor:[UIColor grayColor] forState:UIControlStateNormal];
[self.otherButton setTitleColor:[UIColor greenColor] forState:UIControlStateNormal];
_line1.backgroundColor = [UIColor grayColor];
_line2.backgroundColor = [UIColor grayColor];
}

把当前view添加到window上:

UIWindow *window = [UIApplication sharedApplication].keyWindow;
self.center = CGPointMake(Main_Screen_Width/2, Main_Screen_Height/2);
[window addSubview:coverView]; [window addSubview:self];

红色的view是半透明的,如果 [window addSubview:coverView];去掉的效果

loadNibNamed:(NSString *)name owner:(nullable id)owner options:(nullable NSDictionary *)options用法的更多相关文章

  1. SELECT s.* FROM person p INNER JOIN shirt s ON s.owner = p.id WHERE p.name LIKE 'Lilliana%' AND s.color <> 'white';

    SELECT s.* FROM person p INNER JOIN shirt sON s.owner = p.idWHERE p.name LIKE 'Lilliana%'AND s.color ...

  2. /etc/named/named.conf.options中的Options参数

    listen-on port 53 { any; }; 监听在这部主机系统上面的哪个网路介面.预设是监听在localhost,亦即只有本机可以对DNS 服务进行查询,那当然是很不合理啊!所以这里要将大 ...

  3. 自定义控件CustomAlertView

    [记录][完整代码最下] 效果如下: 可行性分析: 由于系统自带的UIAlertView样式简单,只有两种样式,想要理想的样式就要自定义控件了 文件名取为:CustomAlertView 创建文件如下 ...

  4. 【原】AFNetworking源码阅读(一)

    [原]AFNetworking源码阅读(一) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 AFNetworking版本:3.0.4 由于我平常并没有经常使用AFNetw ...

  5. AFNetworking 3.0 源码解读(六)之 AFHTTPSessionManager

    AFHTTPSessionManager相对来说比较好理解,代码也比较短.但却是我们平时可能使用最多的类. AFNetworking 3.0 源码解读(一)之 AFNetworkReachabilit ...

  6. iOS---观察者模式之--->KVO

    文章结构如下: Why? (为什么要用KVO) What? (KVO是什么) How? ( KVO怎么用) More (更多细节) 原理 自己实现KVO 在我的上一篇文章浅谈 iOS Notifica ...

  7. AVPlayer

    AVPlayer     AVPlayerLayer是CALayer的一个子类,由于AVPlayer这个播放器只能安置在AVPlayerLayer 这个图层之上,所以我们需要实例化一个UIView,并 ...

  8. KVO内部实现原理

    KVO的原理: 只要给一个对象注册一个监听, 那么在运行时, 系统就会自动给该对象生成一个子类对象, (格式如:NSKVONotifying_className), 并且重写自动生成的子类对象的被监听 ...

  9. iOS开发——UI基础-KVO

    KVO == Key Value Observing 作用: 可以监听某个对象属性的改变 一.使用KVO Person *p = [Person new]; p.name = @"chg&q ...

随机推荐

  1. ubuntu server install 安装中文(搜狗)输入法

    1.对于ubuntu server默认无中文输入法框架,我比较倾向于我一直使用的ibus-sunpinyin.这里我需要先安装ibus的框架 不过我遇到了问题: dpkg: dependency pr ...

  2. Loadrunner的Socket脚本关联小技巧

    Socket脚本关联小技巧 我们在socket脚本调试的时候经常会遇到很多问题,比如:socket包中繁杂的二进制编码,socket数据如何进行截取,如何对socket数据包进行参数化等等,以下几点内 ...

  3. shell脚本中特定符合变量的含义

    shell脚本中特定符合变量的含义: $#   传递到脚本的参数个数 $*    以一个单字符串显示所有向脚本传递的参数.与位置变量不同,此选项参数可超过9个 $$    脚本运行的当前进程PID号 ...

  4. MathType中输入破折号的教程

    MathType公式编辑器中的包含的各种数学符号与模板已经足够我们在编辑公式时使用了,但是除此之外,MathType还有一些符号并不是数学专有的符号,但是在数学中也偶尔会用到,比如破折号.MathTy ...

  5. 改善C#程序的建议4:C#中标准Dispose模式的实现

    http://www.cnblogs.com/luminji/archive/2011/03/29/1997812.html 需要明确一下C#程序(或者说.NET)中的资源.简单的说来,C#中的每一个 ...

  6. 利用Sharepoint 创建轻量型应用之基本功能配置!

    博客同步课程.假设你想跟着视频学习,请跟着例如以下视频: http://edu.csdn.net/course/detail/2097 1.   点击安装程序,出现的界面先期安装完毕准备工具,准备工具 ...

  7. Java精选笔记_Servlet事件监听器

    Servlet事件监听器 概述 在程序开发中,经常需要对某些事件进行监听,如监听鼠标点击事件.监听键盘按下事件等,此时就需要使用事件监听器. 事件监听器用于对程序中发生的事件进行监听,在监听的过程中会 ...

  8. android素材资源

    这里先给大家 推荐两个 找图标的 搜索引擎    http://findicons.com/ 这个我也在用 大家也可以试试 找个图标还是很easy的.   http://www.iconfinder. ...

  9. Linux 下安装 Python3

    Linux CentOS 7 安装 Python3: [root@localhost ~]$ yum install -y epel-release [root@localhost ~]$ yum i ...

  10. 你知道嵌入式C语言中各变量存储的位置吗?

    局部变量.局部静态变量.全局变量.全局静态变量区别如下: 局部变量: 栈区: 局部静态变量:静态区: 全局变量: 静态区的常量区: 全局静态变量:静态区. 在进行C/C++编程时,需要程序员对内存的了 ...