UIView常用属性与方法/UIKit继承结构
UIView常用属性与方法
- @interface UIView : UIResponder<NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem>
- /**
- * 通过一个frame来初始化一个UI控件
- */
- - (id)initWithFrame:(CGRect)frame;
- // YES:能够跟用户进行交互
- @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled; // default is YES
- // 控件的一个标记(父控件可以通过tag找到对应的子控件)
- @property(nonatomic) NSInteger tag; // default is 0
- // 图层(可以用来设置圆角效果\阴影效果)
- @property(nonatomic,readonly,retain) CALayer *layer;
- @end
- @interface UIView(UIViewGeometry)
- // 位置和尺寸(以父控件的左上角为坐标原点(0, 0))
- @property(nonatomic) CGRect frame;
- // 位置和尺寸(以自己的左上角为坐标原点(0, 0))
- @property(nonatomic) CGRect bounds;
- // 中点(以父控件的左上角为坐标原点(0, 0))
- @property(nonatomic) CGPoint center;
- // 形变属性(平移\缩放\旋转)
- @property(nonatomic) CGAffineTransform transform; // default is CGAffineTransformIdentity
- // YES:支持多点触摸
- @property(nonatomic,getter=isMultipleTouchEnabled) BOOL multipleTouchEnabled; // default is NO
- @end
- @interface UIView(UIViewHierarchy)
- // 父控件
- @property(nonatomic,readonly) UIView *superview;
- // 子控件(新添加的控件默认都在subviews数组的后面, 新添加的控件默认都显示在最上面\最顶部)
- @property(nonatomic,readonly,copy) NSArray *subviews;
- // 获得当前控件所在的window
- @property(nonatomic,readonly) UIWindow *window;
- // 从父控件中移除一个控件
- - (void)removeFromSuperview;
- // 添加一个子控件(可以将子控件插入到subviews数组中index这个位置)
- - (void)insertSubview:(UIView *)view atIndex:(NSInteger)index;
- // 交换subviews数组中所存放子控件的位置
- - (void)exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2;
- // 添加一个子控件(新添加的控件默认都在subviews数组的后面, 新添加的控件默认都显示在最上面\最顶部)
- - (void)addSubview:(UIView *)view;
- // 添加一个子控件view(被挡在siblingSubview的下面)
- - (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview;
- // 添加一个子控件view(盖在siblingSubview的上面)
- - (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview;
- // 将某个子控件拉到最上面(最顶部)来显示
- - (void)bringSubviewToFront:(UIView *)view;
- // 将某个子控件拉到最下面(最底部)来显示
- - (void)sendSubviewToBack:(UIView *)view;
- /**系统自动调用(留给子类去实现)**/
- - (void)didAddSubview:(UIView *)subview;
- - (void)willRemoveSubview:(UIView *)subview;
- - (void)willMoveToSuperview:(UIView *)newSuperview;
- - (void)didMoveToSuperview;
- - (void)willMoveToWindow:(UIWindow *)newWindow;
- - (void)didMoveToWindow;
- /**系统自动调用**/
- // 是不是view的子控件或者子控件的子控件(是否为view的后代)
- - (BOOL)isDescendantOfView:(UIView *)view; // returns YES for self.
- // 通过tag获得对应的子控件(也可以或者子控件的子控件)
- - (UIView *)viewWithTag:(NSInteger)tag; // recursive search. includes self
- /**系统自动调用(留给子类去实现)**/
- // 控件的frame发生改变的时候就会调用,一般在这里重写布局子控件的位置和尺寸
- // 重写了这个写方法后,一定调用[super layoutSubviews];
- - (void)layoutSubviews;
- @end
- @interface UIView(UIViewRendering)
- // YES : 超出控件边框范围的内容都剪掉
- @property(nonatomic) BOOL clipsToBounds;
- // 背景色
- @property(nonatomic,copy) UIColor *backgroundColor; // default is nil
- // 透明度(0.0~1.0)
- @property(nonatomic) CGFloat alpha; // default is 1.0
- // YES:不透明 NO:透明
- @property(nonatomic,getter=isOpaque) BOOL opaque; // default is YES
- // YES : 隐藏 NO : 显示
- @property(nonatomic,getter=isHidden) BOOL hidden;
- // 内容模式
- @property(nonatomic) UIViewContentMode contentMode; // default is UIViewContentModeScaleToFill
- @end
- @interface UIView(UIViewAnimationWithBlocks)
- + (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
- + (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
- + (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations;
- + (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay usingSpringWithDamping:(CGFloat)dampingRatio initialSpringVelocity:(CGFloat)velocity options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
- @end
UIKit继承结构
UIView常用属性与方法/UIKit继承结构的更多相关文章
- UIView的一些常用属性和方法
UIView的一些常用属性和方法 1. UIView的属性 UIView继承自UIResponder,拥有touches方法. - (instancetype)initWithFrame:(CGRec ...
- UITableView常用属性和方法 - 永不退缩的小白菜
UITableView常用属性和方法 - 永不退缩的小白菜 时间 2014-05-27 01:21:00 博客园精华区原文 http://www.cnblogs.com/zhaofucheng11 ...
- SVG DOM常用属性和方法介绍(1)
12.2 SVG DOM常用属性和方法介绍 将以Adobe SVG Viewer提供的属性和方法为准,因为不同解析器对JavaScript以及相关的属性和方法支持的程度不同,有些方法和属性是某个解析 ...
- javascript的函数、创建对象、封装、属性和方法、继承
转自原文javascript的函数.创建对象.封装.属性和方法.继承 一,function 从一开始接触到js就感觉好灵活,每个人的写法都不一样,比如一个function就有N种写法 如:functi ...
- Node.js process 模块常用属性和方法
Node.js是常用的Javascript运行环境,本文和大家发分享的主要是Node.js中process 模块的常用属性和方法,希望通过本文的分享,对大家学习Node.js http://www.m ...
- ios基础篇(四)——UILabel的常用属性及方法
UILabel的常用属性及方法:1.text //设置和读取文本内容,默认为nil label.text = @”文本信息”; //设置内容 NSLog(@”%@”, label.text); //读 ...
- 第190天:js---String常用属性和方法(最全)
String常用属性和方法 一.string对象构造函数 /*string对象构造函数*/ console.log('字符串即对象');//字符串即对象 //传统方式 - 背后会自动将其转换成对象 / ...
- JavaScript中Number常用属性和方法
title: JavaScript中Number常用属性和方法 toc: false date: 2018-10-13 12:31:42 Number.MAX_VALUE--1.79769313486 ...
- iOS UIView控件的常用属性和方法的总结
一 UIVIew 常见属性1.frame 位置和尺寸(以父控件的左上角为原点(0,0))2.center 中点 (以父控件的左上角为原点(0,0))3.bounds 位置和尺寸(以自己的左上角为原点 ...
随机推荐
- Bootstrap 简介二
什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的. 历史 Bootstra ...
- 调试ASP.NET网站IIS环境问题解决方法汇总
调试网站时出现错误,错误如下: 1. 分析器错误消息: 创建 RewriterConfig 的配置节处理程序时出错: 无法生成临时类(result=1).error CS2001: 未能找到源文件“C ...
- Linux常用命令(6/26)——dd命令和split命令
dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 以可选块长度复制文件,默认情况下从标准输入设备输出到标准输出设备.复制过程中,还可以对文件进行一些转换. dd命令可以指定block的 ...
- promise两个参数的具体作用
Promise通常配合then方法来链式的使用,then方法里面第一个回调函数表示成功状态,也就是resolve通过.then调用,第二个是失败状态-reject通过.Cath调用,如果默认写一个参数 ...
- zabbix api
#!/usr/bin/env python # -*-coding:utf-8 -*- import requests import json class AutoZabbix: def __init ...
- 高并发情况下分布式全局ID
1.高并发情况下,生成分布式全局id策略2.利用全球唯一UUID生成订单号优缺点3.基于数据库自增或者序列生成订单号4.数据库集群如何考虑数据库自增唯一性5.基于Redis生成生成全局id策略6.Tw ...
- [POI2013]BAJ-Bytecomputer
题目描述 A sequence of integers from the set is given. The bytecomputer is a device that allows the foll ...
- Android -- 工程架构,电话拨号器, 点击事件的4中写法
(该系列整理自张泽华android视频教程) 1. android工程 各个文件夹的作用 src/ java原代码存放目录 gen/ 自动生成目录 gen 目录中存放所有由Android开发工具自动 ...
- Java中Collections.sort()排序详解
public static void main(String[] args) { List<String> list = new ArrayList<String>(); ...
- scala学习手记38 - 方法命名约定和for表达式
方法命名约定 之前在学习<运算符重载>一节时曾经说过一个方法命名约定:方法的第一个字符决定了方法的优先级.现在再说另一个命名约定:如果方法以冒号(:)结尾,则调用目标是运算符后面的实例. ...