一、简单的说,IB Xib就是拖控件编程,也可以说是可视化编程(所见即所得),使用Xib编程,相对于纯代码,可以省下大量的敲代码时间,从而提高程序的开发时间,Xcode  4 之后才可以在工程中直接使用xib编程;
 使用xib编程只是减轻了MVC中的V设计的工作量,学好Xib有助于了解MVC设计思想;

 IB(interface bulider),以后称为xib,由于xib文件人能直接识别,所以xib会在编译后生成.nib文件(二进制文件);

 Xib文件中在Xcode 的右侧边框比普通的文件多出4个选项卡,一共6个;

 1.对当前文件的描述

 2.辅助选项卡,主要用来查询

 3.自定义选项卡,可以用来配置和当前Xib文件相关联的实体类,如果创建实体类的时候默认勾上also creat xib file,此时默认和实体类自动关联

 4.控件属性选项卡(优先显示自己的属性,在下面显示它父类的属性)

 5.配置控件的frame

 6.查看和控件相关联的属性或者是方法、或者代理,或者是它所遵循的一些协议
 file's owner  : 指当前xib文件中View所属于的视图控制器,此时view代表这个试图控制器的根视图
//这个方法是视图控制器的指定初始化方法

//如果不给nib文件名字,系统默认去查询找跟当前实体类同名的nib文件名赋值这里

//第二个参数当前程序文件名,[NSBundle mainBundle] 可以不写自动查找

- (id)initWithNibName:(NSString
*)nibNameOrNil bundle:(NSBundle
*)nibBundleOrNil{
    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) { 
    }
一个按钮也可以关联多个方法,
一个方法可以关联多个按钮
————————————————————————————————————————
易错点:reason: '-[UITableViewController
loadView] loaded the "Xnv-Ot-BAc-view-2Bh-PN-5hY" nib but didn't get a UITableView.'
解决方法:后面跟着的视图拖错了,删除修改即可!
__________________________________________________________
StoryBoard故事版:
//如果一个视图上有多个按钮点击之后都要跳转到同一个界面,此时使用在视图控制器之间建立了segue连线,不过要给这个segue连线加一个标识

//如果只有一个按钮点击后跳转到下一个界面,此时使用按钮和视图控制器之间的连线



//实现button控件中的方法

- (IBAction)handlePush:(UIButton
*)sender {

   
//通过选择视图控制器的连线 segue ,完成页面之间的跳转
    [self performSegueWithIdentifier:@"jj" sender:nil];  
}


- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
   
//获取segue起始端的视图控制器对象
   RootViewController *rootVC =  [segue sourceViewController];
   

//通过segue完成跳转的时候会触发这个方法,在跳转之前触发,一般用来传值

    //获取push过去后的视图控制器对象

    DetailViewController
*detailVC = [segue destinationViewController];

   
//把textField中的内容取出来赋值给下一个界面的属性

    detailVC.string
= rootVC.textField.text;//
rootVC.textField.text 相当于 self.textField.text
}
==============================================================


ios可视化编程 UI高级 UI_13的更多相关文章

  1. iOS学习之UI可视化编程-XIB

    一.Interface Builder可视化编程 1.Interface Builder简介: GUI:图形用户界面(Graphical User Interface,简称GUI,又称图形用户接口)是 ...

  2. iOS学习32之UIKit框架-可视化编程-XIB

    1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...

  3. iOS开发UIKit框架-可视化编程-XIB

    1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...

  4. iOS学习之UI可视化编程-StoryBoard

    一.StoryBoard与xib 对比: 相同点:都属于IB编程的方式,可以快速构建GUI. 不同点:xib侧重于单文件(单独的控制器或者视图)编辑,storyboard侧重于多页面关联.storyb ...

  5. iOS学习33之可视化编程-StoryBoard

    1. storyBoard与xib 1> 概述 iOS下可视化编程分为两种方式: xib 和 storyboard 在使用 xib 和 storyboard 创建 GUI 过程中,以 XML 文 ...

  6. APICloud可视化编程(二)

    上一期我们为大家讲解低代码在国内市场的当前现状以及APICloud可视化开发工具的组件类型和特点.相信大家对可视化编程有了一个整体的了解,那么今天带大家更进一步的使用组件. 下载开发工具 登录APIC ...

  7. iOS 6编程Cookbook(影印版)

    <iOS 6编程Cookbook(影印版)> 基本信息 原书名:iOS 6 Programming Cookbook 作者: Vandad Nahavandipoor 出版社:东南大学出版 ...

  8. xib Nib IB 可视化编程详解

    简单的说,Xib就是拖控件编程,也可以说是可视化编程. 相对于代码,使用IB和xib文件来组织UI,可以省下大量代码和时间,从而得到更快的开发速度. 如果你曾经受到过微软家Visual Basic或者 ...

  9. Java学习疑惑(8)----可视化编程, 对Java中事件驱动模型的理解

    我们编写程序就是为了方便用户使用, 我觉得UI设计的核心就是简洁, 操作过于繁琐的程序让很大一部分用户敬而远之. 即使功能强大, 但是人们更愿意使用易于操作的软件. 近年流行起来的操作手势和逐渐趋于成 ...

随机推荐

  1. 使用RestTemplate访问restful服务时遇到的问题

    可以通过通过wireshark抓包,使用Postman发送请求 wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必 ...

  2. Button 使用Command 按钮置灰未更新

    当Button绑定了Command,按钮在窗口弹出.或者其它事件时,会自动置灰. 有时,异步执行时间较长时,界面一些绑定了命令的Button,State不会变化,会一直置灰. 直到再次转移Focus. ...

  3. Ubuntu14.04安装 HP DeskJet GT 5820 打印机的方法

    原创内容发表在 http://www.linuxdiyf.com/linux/25331.html 步骤就是: 这里(https://sourceforge.net/projects/hplip/fi ...

  4. swiper display:none 后 在显示 滑动问题

    一般这种问题  必须在本身元素  或者父元素  显示出来  然后调用swiper实例 或者只需加两行 observer:true, // 修改swiper自己或子元素时,自动初始化swiper obs ...

  5. Linux c readdir是非线程安全,需用readdir_r,要注意用静态变量当做返回值的函数的非线程安全性

    readdir函数: struct dirent *readdir(DIR *dirp); The  data  returned by readdir() may be overwritten by ...

  6. C/C++静态数组与动态数组的区别

    简介 以下三行代码有什么区别? int a[10]; int *a = (int*)malloc(sizeof(int)*10); int *a = new int[10]; 第一行代码定义a为包含1 ...

  7. npm killed有可能是内存不够, 为Ubuntu增加swap

    参考 http://www.cnblogs.com/owenyang/p/4282283.html 查看swap使用策略 cat /proc/sys/vm/swappiness 0代表尽量使用物理内存 ...

  8. 准备在CSDN知识库建立一个Ext JS的知识库

    CSDN近期正在建立一个知识库,目标是打造身边的技术百科全书 ,我觉得这创意挺好,就像stackoverflow一样,常见的问题在里面基本都有了,只要通过搜索就能找到所需的答案. 现在,大家对于Ext ...

  9. Linux中的高级文本处理命令,cut命令,sed命令,awk命令

    1.2.1 cut命令 cut命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields    ## 用于有特定分隔字符 [r ...

  10. Android开发艺术探索——第二章:IPC机制(中)

    Android开发艺术探索--第二章:IPC机制(中) 好的,我们继续来了解IPC机制,在上篇我们可能就是把理论的知识写完了,然后现在基本上是可以实战了. 一.Android中的IPC方式 本节我们开 ...