bringSubviewToFront:
把指定的子视图移动到顶层
- (void)bringSubviewToFront:(UIView *)view
参数
view
需要移到顶层的视图

convertPoint:fromView:
把一个点从一个坐标系转换到接收者的坐标系
- (CGPoint)convertPoint:(CGPoint)point fromView:(UIView *)view
参数
point
一个视图中坐标系上的点
view
一个视图包含了点和他自身坐标系。如果是图是nil,那么这个方法将尝试转换基于窗口的坐标系。否则视图和那个接收者必须属于同一个UIWindow对象。
返回值
一个转换到接收者坐标系的点

convertPoint:toView:
转换一个点从接收者坐标系到给定的视图坐标系
- (CGPoint)convertPoint:(CGPoint)point toView:(UIView *)view
参数
point
一个在调用者坐标系中的点
view
一个包含了需要被转换的点的视图。如果视图是nil,那么这个方法将会转换成基于窗口的坐标。否则视图和接收者都要属于同一个UIWindow对象。
返回值
基于视图的坐标系转换过的点

convertRect:fromView:
转换一个矩形从其他视图坐标系到接收者坐标系。
- (CGRect)convertRect:(CGRect)rect fromView:(UIView *)view
参数
rect
一个在视图坐标系中的矩形
view
一个视图内部有矩形在他的坐标系中。如果视图是nil,那么这个方法将会基于窗口来转换。否则视图和接收者必须都属于同一个UIWindow对象
返回值
The converted rectangle
转换过的矩形

convertRect:toView:
转换接收者坐标系中的矩形到其他视图
- (CGRect)convertRect:(CGRect)rect toView:(UIView *)view
参数
rect
一个在接收者坐标系中的矩形
view
要转换过去的目标视图对象。如果这个是视图是nil,这个方法将会基于窗口坐标系来转换。否者视图和接收者必须属于同一个UIwindow对象
返回值
一个转换过的矩形

drawRect:
在接收者视图中绘制矩形(自定义UIView)
- (void)drawRect:(CGRect)rect
参数
rect
一个定义的需要绘制的矩形
讨论
子类重写这个方法如果他们确实要绘制他们自定义的视图。如果子类是其他视图的容器那么它不需要重写这个方法。默认的实现不做任何事情。如果你自定义的视图是
一个UIView子类,你不需要去调用它的父类实现。注意如果它的父类实现绘制并且不透明属性为YES那么每一个子类都需要填充矩形。
当这个方
法被调用,接收者可以假定他的帧在坐标上已经转换,边界矩形已经应用;所有他要做的就是绘制自定义的方法。使用
UIGraphicsGetCurrentContext方法去获取当前图形内容用来绘制,坐标原点在左上角。不要保留图片内容当他可以被
drawRect:这个方法调用。

hitTest:withEvent:
返回接收者视图层次中最远的派生(包括它本身)的特定的点。(触摸事件)
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
参数
point
接收者坐标系中的点
event
触发这个方法的事件或者是如果这个方法被预调用就返回nil
返回值
一个视图对象最远的派生点。如果这个点位于接收者之外就返回nil
讨论

个方法贯穿视图的层次发送pointInside:withEvent:
消息到每一个子视图用来决定那个子视图需要接收触摸事件。如果pointInside:withEvent:
返回YES,那么视图的层次全部贯穿;否则视图层次的分支是被否定的。你不太需要调用这个方法,但是你需要重写它用来隐藏子视图的触摸事件。
如果视图是隐藏的,禁止用户交互的或者透明值小于01那么这个方法不可用

pointInside:withEvent:
返回一个布尔值指出接收者是否包含特定的点
- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event
参数
point
一个在接收者坐标系内的点
event
这个方法的目标事件或者如果这个方法被预调用返回nil
返回值
如果点在接收者边界内返回YES,否则返回NO

isDescendantOfView:
返回一个布尔值指出接收者是否是给定视图的子视图或者指向那个视图
- (BOOL)isDescendantOfView:(UIView *)view
参数
view
一个视图用来测试子视图在视图层次中的关系
返回值
如果接收者是视图的子视图就返回YES,或者视图就是接收者;否则就是NO

layoutIfNeeded
排列子视图如果需要的话
- (void)layoutIfNeeded
讨论
使用这个方法来关注子视图的排列在绘制前

layoutSubviews
排列子视图
- (void)layoutSubviews
讨论
当layoutIfNeeded被调用是子类用来重写这个方法来排列子视图。默认实现这个方法不做任何事情。

sendSubviewToBack:
移动指定的子视图到它相邻视图的後面
- (void)sendSubviewToBack:(UIView *)view
参数
view
一个子视图用来移动到它後面去

setNeedsDisplay
控制接收者的边界矩形被标记为需要显示
-(void)setNeedsDisplay
讨论

认情况下,视图几何图形的改变自动重绘而不需要调用drawRect:方法。因此,你需要去请求视图重绘当视图的数据或者状态改变的时候。从这个意义上来
说,向视图发送setNeedsDisplay消息。任何UIView对象标记为需要显示後将会在应用程序循环中自动重新绘制。

setNeedsDisplayInRect:
标记接收者中的特定的矩形区域为需要显示,或者添加接收者现有的其他无效区域
- (void)setNeedsDisplayInRect:(CGRect)invalidRect
参数
invalidRect
标记接收者的矩形区域为无效的;他需要在接收者坐标系中定义。
讨论
默认情况下,视图几何图形的改变自动重绘而不需要调用drawRect:方法。因此,你需要去请求视图重绘当视图的数据或者状态改变的时候。使用这个方法或者用setNeedsDisplay方法来标记视图需要显示的地方。

setNeedsLayout
设置当子视图显示的时候需要重新排列
- (void)setNeedsLayout
讨论
如果你调用这个方法在下一个显示方法之间,那么layoutIfNeeded排列子视图;否则将不会做任何事情

sizeThatFits:
计算并返回一个最好的适应接收者子视图的大小
- (CGSize)sizeThatFits:(CGSize)size
参数
size
接收者首选的尺寸
返回值
一个新的大小用来适应接收者子视图
讨论
默认的实现返回大小参数 子类重写这个方法用来返回特定视图的大小。举个粒子,UISwitch返回一个修正过的大小,UIImageView返回图片的大小 这个方法并没有改变接收者的大小

sizeToFit
调整大小并移动接收者视图大小所以他包含了他的子视图
- (void)sizeToFit
讨论
这个方法使用sizeThatFits: 方法来决定大小。子类需要重写sizeThatFits:用来计算正确的尺寸大小。默认的实现不做任何事情。

viewWithTag:
返回视图的特定的标签
- (UIView *)viewWithTag:(NSInteger)tag
参数
tag
一个用来在视图中搜索的标签
返回值
视图在接收者层次中符合的标签,接收者也包含在搜索中。

UIView的常用方法的更多相关文章

  1. UIView之常用方法

    UIView之常用方法 将一个视图添加为子视图,并使之在最上面显示 -(void)addSubView:(UIView *)view; 将指定子视图移动到顶部 -(void)bringSubViewT ...

  2. iOS UIView非常用方法及属性详解

    在调用视图的 Quartz  调用都可以正确地在视图中描画.   视图对象通过 bounds .和 center  属 性声明来跟踪自己的大小和位置.frame 属性包含一个矩形,即边框矩形,用于指定 ...

  3. Swift - UIView的常用属性和常用方法总结

    1,UIView常用的一些属性如下: frame:相对父视图的坐标和大小(x,y,w,h) bounds:相对自身的坐标和大小,所以bounds的x和y永远为0(0,0,w,h) center:相对父 ...

  4. 轻量级应用开发之(02)UIView

    一 控件 1.屏幕上的所有UI元素都叫做控件(也有叫做视图.组件)比如按钮(UIButton).文本(UILabel)都是控件. 2.控件的共同属性有哪些? 尺寸,位置,背景色 3. 苹果将控件的共同 ...

  5. [转] 关于UIView

    [转载] 原文地址 :http://blog.csdn.net/itianyi/article/details/8982518 UIView是开发中使用得最多的控件了,深入的理解很有必要. UIVie ...

  6. iOS用心学 UI基础之UIView

    一.引入UI 在实际开发中,基本的流程大致如下图所示: UI(User Interface)作为最基本的要点,也是非常重要的一部分,UI界面的美观直接决定着着用户的体验,苹果官方给开发中提供了非常强大 ...

  7. UIView的作用

    UIView [UIView的作用] 主要用来显示应用程序的内容,可以作为label.button等控件的容器.表示屏幕上的一块矩形区域,同时可以处理该区域的绘制和触屏事件. MVC,MVVM等设计架 ...

  8. UIWindow与UIView

    UIView与UIWindow * 一般应用程序只有一个UIWindow对象.所有的控件都是在UIWindow上展现的.每个UIView对象都有一个window属性,表示当前view显示在哪个窗体上. ...

  9. UI--普通控件总结1--控件使用

    本文目录 0.UIView常用的属性和操作 0_1.UIView常见的属性 0_2.UIView状态 0_3.UIView常用的方法 1.文本框UITextField和文本视图UITextView 1 ...

随机推荐

  1. MYSQLI DEMO

    1.Select // DEMO mysqli连接方式参考 $db = new mysqli("localhost:3306", "root", "& ...

  2. 我的django之旅(二)模板和静态文件

    我的django之旅(二)模板和静态文件 标签(空格分隔): django 1.为什么要使用模板 在上一篇博文中,提到了HttpReponse,但是HttpReponse只能传送字符串,如果要构建一个 ...

  3. web多语言的一种处理方式

    在开发一种国际化系统时,多语言是必须的. 总的来说处理方式有两种,一种是后端处理,另一种是前端处理.呵呵,有点废话~~ 后端处理没用过,猜猜是在标记需要处理语言的地方进行替换. 前端处理是要先把语言文 ...

  4. 搬寝室(HDU 1421 DP)

    搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  5. MvcPager概述

    MvcPager 概述   MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码, 尤其是ScottG ...

  6. Django RESTful API 设计指南

    网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). 因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信.这导致AP ...

  7. Chrome小技巧:如何下载离线版安装文件

    每当chrome有更新之后,都有不少用户想要下载离线版的安装文件,但苦于找不到下载地址而发愁,其实这个问题很简单,下面我来分享一下方法(仅针对Windows操作系统): 对于稳定版(正式版)Chrom ...

  8. 使用httpclient抓取时,netstat 发现很多time_wait连接

    http://wiki.apache.org/HttpComponents/FrequentlyAskedConnectionManagementQuestions 1. Connections in ...

  9. 【转】repo sync同步Android 源代码下载到99%出错

    原文网址:http://blog.csdn.net/mr_president/article/details/7693707 根据Google官网上的方法在我们实验室搭建了一个本地的Android代码 ...

  10. poj 2288 Islands and Bridges_状态压缩dp_哈密尔顿回路问题

    题目链接 题目描述:哈密尔顿路问题.n个点,每一个点有权值,设哈密尔顿路为 C1C2...Cn,Ci的权值为Vi,一条哈密尔顿路的值分为三部分计算: 1.每一个点的权值之和 2.对于图中的每一条CiC ...