Pertanyaan yang diberi tag «swift-protocols»

6
Bagaimana saya bisa membuat referensi protokol yang lemah di Swift 'murni' (tanpa @objc)
weakreferensi tampaknya tidak berfungsi di Swift kecuali protocoldinyatakan sebagai @objc, yang saya tidak inginkan dalam aplikasi Swift murni. Kode ini memberikan kesalahan kompilasi ( weaktidak dapat diterapkan ke tipe non-kelas MyClassDelegate): class MyClass { weak var delegate: MyClassDelegate? } protocol MyClassDelegate { } Saya perlu awalan protokol dengan @objc, lalu …




2
Apa yang dimaksud dengan "Protokol ... hanya dapat digunakan sebagai batasan umum karena memiliki persyaratan Jenis Sendiri atau terkait"?
Saya mencoba membuat Dictionary (sebenarnya HashSet ) yang dikunci pada protokol khusus di Swift, tetapi memberi saya kesalahan pada judul: Protokol 'myProtocol' hanya dapat digunakan sebagai batasan umum karena memiliki persyaratan Jenis Sendiri atau terkait dan saya tidak bisa membuat kepala atau ekor dari itu. protocol Observing: Hashable { } …

5
Protokol hanya dapat digunakan sebagai batasan umum karena memiliki persyaratan Self atau relatedType
Saya memiliki RequestType protokol dan memiliki Model terkait seperti di bawah ini. public protocol RequestType: class { associatedtype Model var path: String { get set } } public extension RequestType { public func executeRequest(completionHandler: Result<Model, NSError> -> Void) { request.response(rootKeyPath: rootKeyPath) { [weak self] (response: Response<Model, NSError>) -> Void in …

3
Metode non - '@ objc' tidak memenuhi persyaratan opsional protokol '@objc'
Gambaran: Saya memiliki protokol P1 yang menyediakan implementasi default dari salah satu fungsi opsional Objective-C. Ketika saya menyediakan implementasi default dari fungsi opsional, ada peringatan Peringatan Penyusun: Non-'@objc' method 'presentationController(_:viewControllerForAdaptivePresentationStyle:)' does not satisfy optional requirement of '@objc' protocol 'UIAdaptivePresentationControllerDelegate' Versi: kapan: Cepat: 3 Xcode: 8 (rilis publik) Upaya yang dilakukan: …

5
Di Swift, bagaimana cara mendeklarasikan variabel dengan tipe tertentu yang sesuai dengan satu atau lebih protokol?
Di Swift saya dapat secara eksplisit mengatur tipe variabel dengan mendeklarasikannya sebagai berikut: var object: TYPE_NAME Jika kita ingin melangkah lebih jauh dan mendeklarasikan variabel yang sesuai dengan beberapa protokol, kita dapat menggunakan protocoldeklaratif: var object: protocol<ProtocolOne,ProtocolTwo>//etc Bagaimana jika saya ingin mendeklarasikan objek yang sesuai dengan satu atau lebih protokol …

15
Bagaimana cara membuat enum sesuai dengan protokol di Swift?
Dokumentasi Swift mengatakan bahwa class , struct , dan enum semuanya dapat menyesuaikan dengan protokol, dan saya dapat mencapai titik di mana semuanya sesuai. Tapi saya tidak bisa mendapatkan enum untuk berperilaku seperti contoh class dan struct : protocol ExampleProtocol { var simpleDescription: String { get set } mutating func …


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.