SwiftHelpers

GitHub tag (with filter)

使用 Swift 来创造一些令人惊叹的东西!

最低要求

包开发环境

安装

目前仅支持使用 Swift Package Manager 进行安装。

https://github.com/leoho0722/SwiftHelpers.git

Install

如何使用

示例:转换为 JSON 数据

import Foundation
import SwiftHelpers

func createURLRequest<E>(with url: URL,
                         method: HTTP.Method,
                         parameters: E) -> URLRequest where E: Encodable {
    var request = URLRequest(url: url)
    request.httpMethod = method.rawValue
    request.allHTTPHeaderFields = [
        HTTP.HeaderFields.contentType.rawValue : HTTP.ContentType.json.rawValue
    ]
    
    if method != .get {
        request.httpBody = try? JSON.toJsonData(data: parameters)
    }
    
    return request
}

示例:在 UIKit、AppKit 和 SwiftUI 中安全地使用 SF Symbols

UIKit

import SwiftHelpers
import UIKit

class ViewController: UIViewController {
    
    private let imageView = UIImageView()

    override func viewDidLoad() {
        super.viewDidLoad()
        imageView.image = UIImage(symbols: .applelogo) // Use SwiftHelpers
        // imageView.image = UIImage(systemName: "applelogo") // Use UIKit
        view.addSubView(imageView)
        
        // ...
    }
}

AppKit

import Cocoa
import SwiftHelpers

class ViewController: NSViewController {
    
    private let imageView = NSImageView()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        imageView.image = NSImage(symbols: .applelogo) // Use SwiftHelpers
        // imageView.image = NSImage(systemSymbolName: "applelogo", accessibilityDescription: nil) // Use AppKit
        view.addSubView(imageView)
        
        // ...
    }

    override var representedObject: Any? {
        didSet {
            // Update the view, if already loaded.
        }
    }
}

SwiftUI

import SwiftHelpers
import SwiftUI

struct ContentView: View {
    
    var body: some View {
        Image(symbols: .applelogo) // Use SwiftHelpers
        // Image(systemName: "applelogo") // Use SwiftUI
        
        Label("Safely use SF Symobols with SwiftUI", symbols: .applelogo) // Use SwiftHelpers
        // Label("Use SF Symobols with SwiftUI", systemImage: "applelogo") // Use SwiftUI
        
        // ...
    }
}