A. UIView
1.概念
     属于UIKit框架
     屏幕上能看得见摸得着的东西就是UIView,比如屏幕上的按钮、文字、图片
     翻译为:视图/控件/组件
     UIButton、UILable、UITextField都继承自UIView
     每一个UIView都是一个容器,能容纳其他UIView
 
2.父控件和子控件
     父控件:容纳其他UIView的UIView
     子控件:被放置在另外的UIView中得UIView
 
B.UIViewController
1.概念
     用来控制UIView的东西
     当显示一个新界面时,首先会创建一个新的UIViewController,再由UIViewController创建对应的UIView,UIViewController负责管理这个UIView
     UIViewController就是UIView的大管家,负责UIView的创建、显示、操作、销毁,负责监听UIView内部的事件,负责处理UIView用户的交互
     UIViewController内部有个UIView属性,就是它负责的UIView对象
     
C.控件和UIViewController连接
1.IBAction
     (1)能保证方法连线
     (2)相当于void
 
2.IBOutlet
     (1)能保证属性连线
 
3.UITextField
     (1)设置键盘类型,控制输入数据类型(如数字键盘,只能输入数字)
 
4.Company Identifier & Bundle Identifier
     Company Identifier + app名 = Bundle Identifier    
     Bundle Identifier 是APP的唯一标识
 
5.退出键盘
     谁召出,谁驱去
1.
      // 退出键盘
    // 第一响应者,叫出键盘的那个软件
    // 逐个卸下第一响应者
    [self.num1 resignFirstResponder];
    [self.num2 resignFirstResponder];
 
2.自带方法
          [self.view endEditing:YES];
条件是,键盘是由self.view内部的控件召出的
 
 
C.私有扩展
     在.m文件中写上扩展,但是没有扩展名
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@end
 
私有扩展可以定义变量,私有扩展中的变量和方法都是私有的
 
D.连线控件、方法最好放置在.m文件中,保持封装性
 
E.控件常见属性
superview父控件
subviews子控件
tag标识
transform形变
frame位置尺寸:以父控件的左上角为原点
bounds位置尺寸:控件所在矩形框的位置信息,以自己的左上角为原点,一般为(0,0)
center中点:以父控件的左上角为原点
 
 

[iOS基础控件 - 1] UI概念的更多相关文章

  1. [iOS基础控件 - 5.5] 代理设计模式 (基于”APP列表"练习)

    A.概述      在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能      1.按钮点击后,显示为“已下载”,并且不 ...

  2. iOS 基础控件(下)

    上篇介绍了UIButton.UILabel.UIImageView和UITextField,这篇就简短一点介绍UIScrollView和UIAlertView. UIScrollView 顾名思义也知 ...

  3. [iOS基础控件 - 7.0] UIWebView

    A.基本使用 1.概念 iOS内置的浏览器控件 Safari浏览器就是通过UIWebView实现的   2.用途:制作简易浏览器 (1)基本请求 创建请求 加载请求 (2)代理监听webView加载, ...

  4. [iOS基础控件 - 6.12.3] @property属性 strong weak copy

    A.概念 @property 的修饰词   strong: 强指针/强引用(iOS6及之前是retain) weak: 弱智真/弱引用(iOS6及之前是assign)   默认情况所有指针都是强指针 ...

  5. [iOS基础控件 - 6.11.4] storyboard 的 Segue

    A.概念 storyboard中的跳转事件连线,都是一个UIStoryboardSegue对象(Segue)   来源控制器      触发控制器 目标控制器      跳转到的控制器     Seg ...

  6. [iOS基础控件 - 6.11.3] 私人通讯录Demo 控制器的数据传递、存储

    A.需求 1.搭建一个"私人通讯录"Demo 2.模拟登陆界面 账号 密码 记住密码开关 自动登陆开关 登陆按钮 3.退出注销 4.增删改查 5.恢复数据(取消修改)   这个代码 ...

  7. [iOS基础控件 - 5.1] UIScrollView

    A.需要掌握 UIScrollView 是一个能够滚动的视图控件,可以用来展示大量内容,如手机的“设置” 1.常见属性 2.常用代理方法 3.缩放 4.UIScrollView和UIPageContr ...

  8. [iOS基础控件 - 6.12.1] QQ菜单管理 UITabBarController 控制器管理

    A.需求 1.类似QQ.微信顶部或者底部的窗口转换导航条 2.给每个页面添加相应内容   B.UITabBarController 1.基本概念: (1)内容高度 iOS7之前内容高度为:屏幕高度 - ...

  9. [iOS基础控件 - 6.10.2] PickerView 自定义row内容 国家选择Demo

    A.需求 1.自定义一个UIView和xib,包含国家名和国旗显示 2.学习row的重用   B.实现步骤 1.准备plist文件和国旗图片     2.创建模型 // // Flag.h // Co ...

随机推荐

  1. jvisualvm 使用

    和jconsole侧重于内存分析和检测不同,jvisualvm在线程分析方面更强大一些,下面简单介绍下使用: 1. 在要监控的java应用配置文件中,本例是apache-jmeter/bin/jmet ...

  2. Android TextView结合SpannableString使用

    super.onCreate(savedInstanceState); TextView txtInfo = new TextView(this); SpannableString ss = new ...

  3. 安装Hadoop系列 — 导入Hadoop源码项目

    将Hadoop源码导入Eclipse有个最大好处就是通过 "ctrl + shift + r" 可以快速打开Hadoop源码文件. 第一步:在Eclipse新建一个Java项目,h ...

  4. Linux下的动态连接库及其实现机制

    Linux与Windows的动态连接库概念相似,但是实现机制不同.它引入了GOT表和PLT表的概念,综合使用了多种重定位项,实现了"浮动代码",达到了更好的共享性能.本文对这些技术 ...

  5. SSH 远程连接

    ssh远程连接 准备工作: 1 准备两台linux pc 我们一般用的是VMware虚礼软件 2 这两台linux可以互通 3 linux1 :192.168.2.2 这台为你要连接的服务器 linu ...

  6. caffe简易上手指南(二)—— 训练我们自己的数据

    训练我们自己的数据 本篇继续之前的教程,下面我们尝试使用别人定义好的网络,来训练我们自己的网络. 1.准备数据 首先很重要的一点,我们需要准备若干种不同类型的图片进行分类.这里我选择从ImageNet ...

  7. 我的JAVA基础学习史1

    又开始学习了..很是兴奋呢~~~~ 本来是想学安卓的,但是安卓的视频课程中,第一阶段是环境,第二阶段是JAVA基础(讲课的这个老师真是在念课本,但是实在没有办法,没找到更好.更完整的资料了). 虽然以 ...

  8. Servlet个人总结

    netstat -an ——查看端口占用情况 netstat -an ——查看是谁占用了哪个端口 端口被占用之后可以关闭端口占用程序或者在conf/server.xml修改本身使用端口 javac - ...

  9. java RuntimeException

    总结了一下JAVA中常见的几种RuntimeException,大约有如下几种: NullPointerException - 空指针引用异常 ClassCastException - 类型强制转换异 ...

  10. Andriod x86 4,4

    用 vbox 装了下Andriod x86 4,4 ,能用的App真心少,反正我只是用来看看安卓浏览器里网站效果,海豚浏览器还有qq浏览器x86版,还能用用,主要要换UA为iphone和ipad之类的 ...