跳到主要内容
版本:v6

自定义视图控制器

自 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 的方法都明确支持被子类覆盖。