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

时间:2022-05-19 20:48:56

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

iOS10 UI视图的绘制

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

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

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

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

import UIKit

class 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所示的效果。

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

图1.28  运行效果

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

iOS10 UI视图控制器和视图

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

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

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