Swift Markdown Kit · DOCS

渲染

渲染

SwiftUI

import SwiftUI
import swift_markdown_kit

struct MarkdownScreen: View {
    var body: some View {
        MarkdownRenderView(markdown: "# Hello") { event in
            switch event {
            case .ready:
                print("Renderer ready")
            case .rendered(let height):
                print("Rendered height:", height)
            case .heightChanged(let height):
                print("Height changed:", height)
            case .action(let action):
                print("Action:", action)
            case .error(let error):
                print("Render error:", error.code, error.message)
            }
        }
    }
}

UIKit

import UIKit
import swift_markdown_kit

final class MarkdownViewController: UIViewController {
    private let renderer = MarkdownRenderViewController()

    override func viewDidLoad() {
        super.viewDidLoad()

        addChild(renderer)
        view.addSubview(renderer.view)
        renderer.view.frame = view.bounds
        renderer.view.autoresizingMask = [.flexibleWidth, .flexibleHeight]
        renderer.didMove(toParent: self)

        renderer.onEvent = { event in
            if case .error(let error) = event {
                print("Render error:", error.code, error.message)
            }
        }

        renderer.render("# Hello")
    }
}