Skip to content

Instantly share code, notes, and snippets.


Wei Wang onevcat

Block or report user

Report or block onevcat

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View ZipAll.swift
import Combine
import Foundation
extension Publishers {
struct ZipAll<Collection: Swift.Collection>: Publisher
where Collection.Element: Publisher
typealias Output = [Collection.Element.Output]
typealias Failure = Collection.Element.Failure


PokeMaster app 现在已经是一个具有完整功能的 SwiftUI app 了。麻雀虽小,五脏俱全,在这个示例 app 里,我们涉及到了一个一般性的 iOS app 所需要的大部分内容:

  • 如何构建内容展示的列表
  • 如何构建用户交互的表单
  • 如何进行网络请求并把内容展示出来
  • 如何响应用户的手势
  • 如何在不同页面之间进行导航
  • 以及,如何通过一定的架构将所有上面的内容整合起来
View cabal-install.rb
class CabalInstall < Formula
desc "Command-line interface for Cabal and Hackage"
homepage ""
url ""
sha256 "69bcb2b54a064982412e1587c3c5c1b4fada3344b41b568aab25730034cb21ad"
head "", :branch => "2.4"
bottle do
cellar :any_skip_relocation
sha256 "4c9ad9914b483ffb64f4449bd6446cb8c0ddfeeff42eddde9137884af3471825" => :mojave
View ResumableSink.swift
import Foundation
import Combine
protocol Resumable {
func resume()
extension Subscribers {
class ResumableSink<Input, Failure: Error>: Subscriber, Cancellable, Resumable {
let receiveCompletion: (Subscribers.Completion<Failure>) -> Void
View BrokenPageVC.swift
final class ViewController: UIPageViewController {
class Inner: UIViewController {
var color: UIColor!
var name: String!
override func viewDidLoad() {
view.backgroundColor = color
View PrimitiveButtonStyle.swift
struct ContentView: View {
let foo: Bool = true
var body: some View {
Button(action: {
}) {
Text("Click Me")
View ToggleDemo.swift
import SwiftUI
class Foo: ObservableObject {
@Published var toggle = false
struct ContentView: View {
@EnvironmentObject var foo: Foo
var body: some View {
VStack {
View files.txt个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf个%20Swift%20必备%20Tips.pdf
View webview-scrolldelegate.swift
import UIKit
import WebKit
// Disableing `WKWebView` user zooming by returning `nil` in `UIScrollViewDelegate`'s
// `viewForZooming` delegate method.
// On iOS 12, the delegate method only called when set the web view itself as the
// scroll view delegate.
class WebView: WKWebView {}
View Poker.swift
//Solution goes in Sources
public struct Card: CustomStringConvertible {
enum Suit: String {
case spade = "", heart = "", club = "", diamond = ""
// It is not the standard Texas poker rule. All suits are considered equal.
// However, there is a test case to "brake tide by suit", in which "heart" is the largest.
var value: Int {
switch self {
You can’t perform that action at this time.