iOS10 UI教程视图的绘制与视图控制器和视图

iOS10 UI视图的绘制

iOS10 UI教程视图的绘制与视图控制器和视图,在iOS中,有很多的绘图应用。这些应用大多是在UIView上进行绘制的。如果想在一个UIView中绘制一个图形,需要写一个扩展UIView的子类,并重写draw(_:)方法。在该方法中实现绘图操作,程序会自动调用此方法进行绘图。

【示例1-11:ViewDrawing】以下将在视图上绘制一个椭圆。具体的操作步骤如下:

(1)创建一个基于UIView的类文件,命名为ellipseView。

(2)打开ellipseView.swift文件,编写代码,实现椭圆的绘制。

import UIKitclass ellipseView: UIView {override func draw(_ rect: CGRect) {let path = UIBezierPath(ovalIn: self.bounds)UIColor.red.setStroke()UIColor.orange.setFill()path.fill()path.stroke()}}

  

(3)打开Main.storyboard文件,选择主视图,在Show the Identity inspector面板中找到Class,将其设置为刚才创建的类即ellipseView。此时运行程序,会看到如图1.28所示的效果。

 

图1.28  运行效果

注意:如果开发者想要进行重绘,重绘操作仍然在draw(_:)方法中完成,但是苹果不建议直接调用draw(_:)方法,如果强直直接调用此方法,是没有效果的。苹果要求开发者调用UIView类中的setNeedsDisplay()或者是setNeedsDisplay(_:)方法,则程序会自动调用draw(_:)方法进行重绘。

iOS10 UI视图控制器和视图

在一个应用中,如果视图很多时,为了方便关联,可以使用视图控制器。视图控制器的功能就是对iOS应用程序的视图进行管理。视图控制器使用UIViewController实现。UIViewController的view属性是层次结构的根视图,它定义了视图控制器的内容。

iOS10 UI教程视图的绘制与视图控制器和视图

相关阅读:iOS10 UI教程视图调试

iOS10 UI教程视图的绘制与视图控制器和视图相关推荐

  1. iOS10 UI教程视图的生命周期

    iOS10 UI教程视图的生命周期 说到视图的生命周期一般都是指视图控制器的视图生命周期.在视图的声明周期中最主要的有8个方法,分别为loadView().viewDidLoad().viewWill ...

  2. iOS10 UI教程视图的边界与视图的框架

    iOS10 UI教程视图的边界与视图的框架 iOS10 UI视图的边界 在视图的几何形状中我们提到了视图属性中的一部分属性可以将定义的视图绘制在屏幕上.其中典型的3个属性为边界属性.框架属性以及中心位 ...

  3. iOS10 UI教程视图的几何形状

    iOS10 UI教程视图的几何形状 视图属性中的一部分属性可以让定义的视图绘制在屏幕上.在讲解这些属性前,我们首先将讲解,定义视图的几何形状所涉及到的结构类型.这些结构类型如下: CGPoint:它表 ...

  4. iOS10 UI教程视图调试

    iOS10 UI教程视图调试 iOS10 UI教程视图调试,当视图很复杂的时候,层次结构就不会很简单了.Xcode可以通过视图(View)调试帮助开发者解决层次结构复杂的问题.视图调试是在Xcode ...

  5. iOS10 UI教程视图和子视图的可见性

    iOS10 UI教程视图和子视图的可见性 iOS10 UI教程视图和子视图的可见性,一个父视图可以通过clipsToBounds属性,定义子视图在边界(边界就是父视图的框架也就是父视图可以显示的范围) ...

  6. iOS10 UI教程子视图和父视图UI层次结构和Views继承

    iOS10 UI教程子视图和父视图UI层次结构和Views继承 iOS10 UI教程子视图和父视图UI层次结构和Views继承,本节将讲解与UI层次结构和Views继承相关的内容,其中包括子视图和父视 ...

  7. iOS10 UI教程视图的中心位置

    iOS10 UI教程视图的中心位置 center表示的是视图的中心位置属性,这个属性在相对的UI层次结构上工作,和frame类似.center属性是一个在父视图上定义视图的位置的简便方法.center ...

  8. iOS10 UI教程禁用视图与用户的交互

    iOS10 UI教程禁用视图与用户的交互 在上文中我们提到了使用isHidden属性和alpha属性可以使视图与用户的交互被禁用,除此之外此功能还可以使用UIView的isUserInteractio ...

  9. iOS10 UI教程基改变视图的外观与视图的可见性

    iOS10 UI教程基改变视图的外观与视图的可见性 视图是应用程序的界面,是用户在屏幕上看到的对象.用户可以通过触摸视图上的对象与应用程序进行交互,所以视图界面的优劣会直接影响到了客户体验的好坏.和视 ...

最新文章

  1. apiCloud中的数据库操作mcm-js-sdk的使用
  2. windows计算器
  3. A-Frame不如x3dom
  4. 谈谈近况,谈谈自由职业,谈谈金饭碗
  5. 获取新浪网的链接信息
  6. 数学问题当中的一些基本计数问题
  7. mac运行python速度慢_python-3.x – Pygame简单循环在Mac上运行得非常慢
  8. Educational Codeforces Round 37-F.SUM and REPLACE (线段树,线性筛,收敛函数)
  9. [蓝桥杯][基础练习VIP]分解质因数-质数筛选+模拟+双指针
  10. leetcode 977. 有序数组的平方(双指针)
  11. C语言(CED)多组字符串匹配,输出所有重复出现的字符串,多次重复出现的只输出一次就好。
  12. flink1.12.2+hudi0.9.0测试
  13. SAP License:SAP中的默认帐户与密码应用
  14. android开发列表界面
  15. sql中根据逗号分隔,查出多行数据
  16. elman神经网络的实现
  17. ubuntu20.04桌面美化
  18. 免费企业邮箱: Google企业邮箱的申请
  19. “掌上理财”项目总结
  20. 张栋_机器学习的照片 - 微相册

热门文章

  1. 深度解读:人体防御病毒的免疫力究竟是什么?
  2. 中国芯片将靠此超车!RISC-V架构神在哪全解构【附下载】
  3. MIT科学家Dimitri P. Bertsekas最新2019出版《强化学习与最优控制》(附书稿PDF讲义)...
  4. 人类的下一代计算平台——科技大发展前景下的新思考
  5. 让汽车软件进入 iPhone 时代!
  6. “拒绝在 iPad 上运行 Xcode!”
  7. 36 岁开发者应聘被拒,这 3 位 50 岁程序员的生存秘籍送给你!
  8. 为什么体制内外永远在互相羡慕着?
  9. 新基建来势汹汹,开发者如何捍卫其安全?
  10. ​如何设计一个安全可靠的 API 接口?