mirror of
https://github.com/m5stack/StackChan.git
synced 2026-04-28 11:27:59 +00:00
65 lines
1.9 KiB
Swift
65 lines
1.9 KiB
Swift
//
|
|
// ViewFactory.swift
|
|
// Runner
|
|
//
|
|
// Created by 袁智鸿 on 2026/1/30.
|
|
//
|
|
|
|
import Flutter
|
|
import UIKit
|
|
|
|
class StackChanRobotViewFactory: NSObject, FlutterPlatformViewFactory {
|
|
|
|
private let messenger: FlutterBinaryMessenger
|
|
|
|
init(messenger: FlutterBinaryMessenger) {
|
|
self.messenger = messenger
|
|
super.init()
|
|
}
|
|
|
|
func create(withFrame frame: CGRect, viewIdentifier viewId: Int64, arguments args: Any?) -> any FlutterPlatformView {
|
|
return StackChanRobot(frame: frame, viewId: viewId, messenger: messenger, args: args)
|
|
}
|
|
|
|
func createArgsCodec() -> any FlutterMessageCodec & NSObjectProtocol {
|
|
return FlutterStandardMessageCodec.sharedInstance()
|
|
}
|
|
}
|
|
|
|
|
|
class StackChanRotaryRobotViewFactory: NSObject, FlutterPlatformViewFactory {
|
|
private let messenger: FlutterBinaryMessenger
|
|
|
|
init(messenger: FlutterBinaryMessenger) {
|
|
self.messenger = messenger
|
|
super.init()
|
|
}
|
|
|
|
func create(withFrame frame: CGRect, viewIdentifier viewId: Int64, arguments args: Any?) -> any FlutterPlatformView {
|
|
return StackChanRotaryRobot(frame: frame, viewId: viewId, messenger: messenger, args: args)
|
|
}
|
|
|
|
func createArgsCodec() -> any FlutterMessageCodec & NSObjectProtocol {
|
|
return FlutterStandardMessageCodec.sharedInstance()
|
|
}
|
|
}
|
|
|
|
|
|
class StackChanArViewFactory: NSObject, FlutterPlatformViewFactory {
|
|
private let messenger: FlutterBinaryMessenger
|
|
|
|
init(messenger: FlutterBinaryMessenger) {
|
|
self.messenger = messenger
|
|
super.init()
|
|
}
|
|
|
|
func create(withFrame frame: CGRect, viewIdentifier viewId: Int64, arguments args: Any?) -> any FlutterPlatformView {
|
|
return StackChanArView(frame: frame, viewId: viewId, messenger: messenger, args: args)
|
|
}
|
|
|
|
func createArgsCodec() -> any FlutterMessageCodec & NSObjectProtocol {
|
|
return FlutterStandardMessageCodec.sharedInstance()
|
|
}
|
|
|
|
}
|