UIKit User Interface Catalog

UIKit User Interface Catalog

Views are the building blocks for constructing your user interface. Rather than using one view to present your content, you are more likely to use several views, ranging from simple buttons and text labels to more complex views such as table views, picker views, and scroll views. Each view represents a particular portion(部分) of your user interface and is generally optimized for a specific type of content(每个view呈现在用户界面的某个部分,并且通常被优化成指定类型的内容,比如有的呈现图片,有的呈现文字..). By building view upon view, you get a view hierarchy.


Content of Views

All views in UIKit are subclasses of the base class UIView. For example, UIKit has views specifically for presenting images, text, and other types of content(content:比如view上面的图片,文字...通过CA框架来draw). In places where the predefined views do not provide what you need, you can also define custom views and manage the drawing and event handling yourself.(当预定义的views,比如UIKit提供的button,label等,无法提供你需要的,你可以自定义views,并且可以管理drawing,以及管理事件).


contentMode
A flag used to determine how a view lays out its content when its bounds change.

Discussion
  The content mode specifies how the cached bitmap(缓存的位图bitmap) of the view’s layer is adjusted when the view’s bounds change. This property is often used to implement resizable controls, usually in conjunction with the contentStretch property. Instead of redrawing the contents of the view every time, you can use this property to specify that you want to scale the contents (either with or without distortion) or pin them to a particular spot on the view.


Use the Mode (contentMode) field to specify how a view lays out its content when its bounds change. This property is often used to implement resizable controls. Instead of redrawing the contents(比如视图里面的文字,图片等视图可见部分) of the view every time its bounds change, you can use this property to specify that you want to scale the contents or pin them to a particular spot on the view.



The Tag (tag) field serves as an integer that you can use to identify view objects in your app.


contentMode用来指定当视图的bounds变化的时候,他的内容(contents)是如何变化的.这个属性通常来实现可改变大小的控件,可以通过这个属性来指定你想按比例改变内容(contents)或者把它们放到某个固定的点,从而就可以当视图的bounds改变的时候,不用每次都重绘(redrawing)内容.(注:这里的content应该是view上面绘制的内容,比如button,当button放大的时候,上面的颜色以及标题之类的可以等比例变换不用重绘).

The Tag (tag) field serves as an integer that you can use to identify view objects in your app.


Behavior of Views
By default, the User Interaction Enabled (userInteractionEnabled) checkbox is selected, which means that user events—such as touch and keyboard—are delivered to the view normally. When the checkbox is unselected, events intended for the view are ignored and removed from the event queue.

默认情况下,userInterationEnable被选中,这意味着用户事件---比如触摸以及键盘--一般情况下会被传递给view.当这个选项没有被选中的时候,向这个事件发送的时间会被忽略并且从事件队列中移除.


The Multiple Touch (multipleTouchEnabled) checkbox is unselected by default, which means that the view receives only the first touch event in a multi-touch sequence. When selected, the view receives all touches associated with a multitouch sequence.

multipleTouchEnabled默认是没被勾选的,这时候在多点触摸序列中,view只会接受第一次触摸事件.当勾选的时候,view会接受多点触摸序列中的所有触摸.



Views have a number of properties related to drawing behavior:

view有关绘制(drawing)的属性

The Opaque (opaque) checkbox tells the drawing system how it should treat the view. If selected, the drawing system treats the view as fully opaque, which allows the drawing system to optimize some drawing operations and improve performance. If unselected, the drawing system composites the view normally with other content. You should always disable this checkbox if your view is fully or partially transparent.

Opeaque属性:告诉绘制系统(drawing system)怎么处理view.如果勾选,那么绘制系统会将view绘制成完全不透明,这回让绘制系统优化一些绘制操作,并且提升执行效率.如果不选择,绘制系统通常会将这个view与其他内容复合在一起.


If the Hidden (hidden) checkbox is selected, the view disappears from its window and does not receive input events.

如果Hidden被勾选,view会从窗口消失,并且不会接受事件.


When the Clears Graphics Context (clearsContextBeforeDrawing) checkbox is selected, the drawing buffer is automatically cleared to transparent black before the view is drawn. This behavior ensures that there are no visual artifacts left over when the view’s contents are redrawn.

当Clears Graphics Context(clearsContextbeforeDrawing)被勾选的时候,绘制(drawing)缓冲会在view在绘制的之前自动清除成透明的黑色.这会保证veiw的内容重绘的时候,view上没有之前视图遗痕.


Selecting the Clip Subviews (clipsToBounds) checkbox causes subviews to be clipped to the bounds of the view. If unselected, subviews whose frames extend beyond the visible bounds of the view are not clipped.

选中Clip SubView框会使子视图被裁减在view的bounds内部.如果不勾选,当子视图的frame超出了view的bounds的时候,不会被裁减.


When the Autoresize Subviews (autoresizesSubviews) checkbox is selected, the view adjusts the size of its subviews when its bounds change.

当Autoresize Subviews(括号内是属性名称)被勾选的时候,view的bounds变化的时候,view会调整它子视图的大小.

(autoresizesSubviews:A Boolean value that determines whether the receiver automatically resizes its subviews when its bounds change.)


(contentMode:A flag used to determine how a view lays out its content when its bounds change.)




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值