Pytania otagowane jako swift4

Tego tagu należy używać tylko w przypadku pytań bezpośrednio związanych ze zmianami w wersji 4 języka programowania Swift firmy Apple. Użyj tagu [swift] w przypadku bardziej ogólnych pytań o język lub tagów [ios], [cocoa], [apple-watch] itp. W przypadku pytań dotyczących programowania na platformach Apple.

12
Zastosowanie wnioskowania Swift 3 @objc w trybie Swift 4 jest przestarzałe?
Krótko mówiąc, podczas korzystania z Xcode 9 Beta napotkałem następujące ostrzeżenie: Zastosowanie wnioskowania Swift 3 @objc w trybie Swift 4 jest przestarzałe. Proszę rozwiązać przestarzałe ostrzeżenia wnioskowania @objc, przetestować kod z włączonym rejestrowaniem „Używanie przestarzałego wnioskowania @objc” i wyłączyć wnioskowanie Swift 3 @objc. ** Po kilku badaniach wciąż nie mam …

13
Jak napisać dispatch_after po GCD w Swift 3, 4 i 5?
W Swift 2 mogłem użyć dispatch_afterdo opóźnienia akcji za pomocą wielkiej centralnej wysyłki: var dispatchTime: dispatch_time_t = dispatch_time(DISPATCH_TIME_NOW, Int64(0.1 * Double(NSEC_PER_SEC))) dispatch_after(dispatchTime, dispatch_get_main_queue(), { // your function here }) Ale wydaje się, że nie kompiluje się już od Swift 3. Jaki jest preferowany sposób pisania tego we współczesnym Swift?

18
Jak korzystać z indeksu dolnego odcinania łańcucha w Swift 4?
Mam następujący prosty kod napisany w Swift 3: let str = "Hello, playground" let index = str.index(of: ",")! let newStr = str.substring(to: index) Z Xcode 9 beta 5 otrzymuję następujące ostrzeżenie: „ substring(to:)” jest przestarzałe: użyj Stringindeksu krojenia z operatorem „częściowy zakres od”. Jak można zastosować ten indeks krojenia z …
294 swift  swift4 

7
ostrzeżenie: „znaki” są przestarzałe: użyj bezpośrednio ciągu lub podłańcucha
znaków - właściwość instancji String, jest przestarzała z Xcode 9.1 Bardzo przydatne było pobranie podciągu z String za pomocą characterswłaściwości, ale teraz jest on przestarzały, a Xcode sugeruje użycie substring. Próbowałem sprawdzić pytania SO i samouczki / wytyczne dla programistów Apple. Ale nie widziałem żadnego rozwiązania / alternatywy zgodnie z …

5
Jak mogę sobie poradzić z wycofywaniem @objc wnioskowania z #selector () w Swift 4?
Próbuję przekonwertować kod źródłowy mojego projektu ze Swift 3 na Swift 4. Jedno ostrzeżenie, które daje mi Xcode, dotyczy moich selektorów. Na przykład dodaję cel do przycisku za pomocą zwykłego selektora, takiego jak ten: button.addTarget(self, action: #selector(self.myAction), for: .touchUpInside) To jest ostrzeżenie, które pokazuje: Argument „#selector” odnosi się do metody …
132 swift  xcode  swift4 

13
Tablice dekodowania Swift JSONDecode kończą się niepowodzeniem, jeśli nie powiedzie się dekodowanie pojedynczego elementu
Podczas korzystania z protokołów Swift4 i Codable napotkałem następujący problem - wygląda na to, że nie ma sposobu, aby pozwolić JSONDecoderna pominięcie elementów w tablicy. Na przykład mam następujący kod JSON: [ { "name": "Banana", "points": 200, "description": "A banana grown in Ecuador." }, { "name": "Orange" } ] I …
116 arrays  json  swift  swift4  codable 

7
Czy w przypadku JSONDecoder w Swift 4 brakujące klucze mogą używać wartości domyślnej zamiast być właściwościami opcjonalnymi?
Swift 4 dodał nowy Codableprotokół. Kiedy używam JSONDecoder, wydaje się, że wszystkie nieopcjonalne właściwości mojej Codableklasy mają klucze w formacie JSON lub generuje błąd. Nadanie każdej właściwości mojej klasy opcjonalności wydaje się niepotrzebnym kłopotem, ponieważ naprawdę chcę użyć wartości w json lub wartości domyślnej. (Nie chcę, aby ta właściwość była …
114 json  swift  swift4  codable 


12
Jak zdekodować właściwość z typem słownika JSON w protokole dekodowalnym Swift 4
Powiedzmy, że mam Customertyp danych, który zawiera metadatawłaściwość, która może zawierać dowolny słownik JSON w obiekcie klienta struct Customer { let id: String let email: String let metadata: [String: Any] } { "object": "customer", "id": "4yq6txdpfadhbaqnwp3", "email": "john.doe@example.com", "metadata": { "link_id": "linked-id", "buy_count": 4 } } metadataNieruchomość może mieć dowolną …
104 json  swift  swift4  codable 

4
Jak używać kluczy niestandardowych z protokołem Decodable Swift 4?
Swift 4 wprowadził obsługę natywnego kodowania JSON i dekodowania za pośrednictwem Decodableprotokołu. Jak używać do tego kluczy niestandardowych? Np. Powiedz, że mam strukturę struct Address:Codable { var street:String var zip:String var city:String var state:String } Mogę to zakodować do JSON. let address = Address(street: "Apple Bay Street", zip: "94608", city: …
102 json  swift  swift4  codable 

12
pasek nawigacji rightbaritem błąd przycisku obrazu iOS 11
Ten kod działa dobrze w ios10. dostaję swoją etykietę i przycisk obrazu, który jest profilem zdjęcia użytkownika, okrągły okrągły ... ok. ale podczas uruchamiania symulatora xcode 9 ios11 dostaję go rozciągniętym. Ramka przycisku musi mieć rozmiar 32x32, podczas sprawdzania karty SIM i uzyskiwania widoku i mówienia xcode, aby opisał widok, …
101 ios  swift  ios11  xcode9-beta  swift4 



7
UIApplication.registerForRemoteNotifications () należy wywołać tylko z głównego wątku
Xcode 9 (iOS 11) wyświetla mi błąd / ostrzeżenie podczas rejestracji w celu otrzymania (zdalnego) powiadomienia. Oto komunikat o błędzie A oto kod, próbowałem: let center = UNUserNotificationCenter.current() center.delegate = self center.requestAuthorization(options: [.sound, .alert, .badge]) { (granted, error) in if error == nil{ UIApplication.shared.registerForRemoteNotifications() } } Linia błędu / ostrzeżenia: …

14
Xcode 9: Moduł skompilowany w Swift 3.1 nie może być importowany w Swift 4.0
Po aktualizacji do Xcode 9 próbowałem zbudować jeden z moich projektów. Używam modułu FacebookLogin . Mam błąd kompilatora w FacebookLogin / LoginButton.swift @testable import FacebookCore ❌ Module compiled with Swift 3.1 cannot be imported in Swift 4.0 W ustawieniach kompilacji mojego celu wersja językowa Swift jest ustawiona na Swift 3.2 …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.