跳到主要内容
版本:v7

自定义视图控制器

从 Capacitor 3.0 开始,您可以在应用程序中继承 CAPBridgeViewController。大多数应用不需要此功能,但它为某些使用场景提供了官方支持方案。

何时需要创建子类

以下情况可能需要创建子类:

如需创建自定义子类,请按照以下步骤操作。

创建 MyViewController.swift

首先打开 Xcode,右键点击 App 组(位于 App target 下),从上下文菜单中选择 New File...,在窗口中选择 Cocoa Touch Class,在后续界面中将 Subclass of: 设为 UIViewController,然后保存文件。

在 Xcode 中新建 ViewController 在 Xcode 中命名 ViewController

编辑 Main.storyboard

接着在项目导航器中选择 Main.storyboard 文件,选择 Bridge View Controller Scene 中的 Bridge View Controller,在右侧选择 Identity Inspector,将自定义类名改为 MyViewController

在 Xcode 中编辑 Storyboard

编辑 MyViewController.swift

最后在项目导航器中选择 MyViewController.swift 文件,编辑它以导入 Capacitor 并更改父类:

import UIKit
import Capacitor

class MyViewController: CAPBridgeViewController {
// 自定义代码
}

完成!

后续步骤

Xcode 生成文件时应该已经自动创建了 viewDidLoad() 方法,请查阅 CAPBridgeViewController 的内联文档,找到可能需要重写的 Capacitor 特定方法。任何标记为 open 的方法都明确允许子类进行覆盖。