- (void)lookupPlayers {
NSLog(@"Looking up %lu players...", (unsigned long)match.players.count);
// Error on the below line
[GKPlayer loadPlayersForIdentifiers:match.players withCompletionHandler:^(NSArray *players, NSError *error) { {
if (error != nil) {
NSLog(@"Error retrieving player info: %@", error.localizedDescription);
matchStarted = NO;
[delegate matchEnded];
} else {
// Populate players dict
self.playersDict = [NSMutableDictionary dictionaryWithCapacity:players.count];
for (GKPlayer *player in players) {
NSLog(@"Found player: %@", player.alias);
[playersDict setObject:player forKey:player.playerID];
}
// Notify delegate match can begin
matchStarted = YES;
[delegate matchStarted];
}
}];
1
A
Antwort
1
Lesen Sie die Dokumentation für GKPlayer loadPlayersForIdentifiers:withCompletionHandler:
sendet. Das Array von Bezeichnern muss ein Array von NSString
sein, aber Sie übergeben ein Array von GKPlayer
.
Sie können dies tun, eine Reihe von Spieler-IDs aus dem Array von Spielern zu bekommen:
NSArray *playerIds = [match.players valueForKey:@"playerID"];
Dann playerIds
passieren statt match.players
zu loadPlayersForIdentifiers:withCompletionHandler:
.
Verwandte Themen
- 1. Unverträgliche Zeigertypen und Konstantheit
- 2. Wert des Typs 'Swift._NativeDictionaryStorageOwner <Swift.String, Swift.AnyObject>' (0x40c2134) konnte nicht in 'NSArray' (0x383bb8d8)
- 3. Objective-C-Laufzeitversion NSArray <NSString *> * demo;
- 4. HTMLHelper, Generierung Parameter des Typs "Expression <Func <TModel, TValue >> Ausdruck" aus Eigenschaft
- 5. Objective-C-Klasse -> string wie: [NSArray className] -> @ "NSArray"
- 6. Freigabe NSArray Vs Freigabe NSArray
- 7. Wie NSArray des NSArray-Objekts in objective c verwenden?
- 8. Wert des Typs '(Benutzer) -> Dictionary <String, String>' kann nicht zum erwarteten Argumenttyp 'Dictionary <String, String>'
- 9. Wert des Typs 'UnsafePointer <Double>' kann nicht in den erwarteten Argumenttyp 'UnsafePointer <_>'
- 10. Instanceof Klasse <?> Parameter
- 11. Unterschiede zwischen [NSArray arrayWithArray:] und [NSArray Kopie]
- 12. kann nicht Element des Typs machen <Klasse 'sqlalchemy.dialects.postgresql.base.UUID>
- 13. Darstellen eines Typs in DBS <>
- 14. NSArray als Parameter in AFNetworking übergeben
- 15. Was macht "<%:"?</p> <pre><code><%: Model.FirstName %> </code></pre> <p>was bedeutet "<%:" do
- 16. Wert des Typs 'Bereich <Int>' kann nicht zum erwarteten Argumenttyp 'Bereich <Index>' konvertiert werden (auch bekannt als 'Bereich <String.CharacterView.Index>')
- 17. NSArray Elemente hinzufügen
- 18. ungültige Initialisierung von nichtkonstanten Referenz des Typs von einem rvalue des Typs '<geschweifte Initialisierungsliste>'
- 19. <%# %> vs <%= %>
- 20. howto get Builder zum Erstellen <tag></tag> anstelle von <tag/>
- 21. NSArray von NSString zu NSString von NSArray-Literal?
- 22. LINQ: IEnumerable <KeyValuePair <Sometype, IEnumerable <OtherType> >> Auswahl
- 23. Umwandlung Aufgabe <DbSet<T>> zu Aufgabe <IEnumerable <T>>
- 24. Überladen des Operators << zum Akzeptieren einer Template-Funktion
- 25. SortedList <>, SortedDictionary <> und Dictionary <>
- 26. Control.Category, was bedeutet >>> und <<<?
- 27. Verschiedene Methoden zum Anzeigen von NSarray
- 28. Kopiert NSArray Objekte?
- 29. NSArray zu Core Datenelemente
- 30. <Quantity<T>>
In welcher Zeile tritt die Fehlermeldung auf? Während der Fehler nicht genau Englisch ist, ist es ziemlich klar; Sie senden ein Array von 'GKPlayer'-Objekten an eine Methode, die ein Array von' NSString'-Objekten erwartet – Paulw11
@ Paulw11 Der Fehler ist im Code kommentiert. – rmaddy
Oh richtig. Ich hasse es, wenn Leute das tun. Ich habe den grauen Text nie bemerkt. – Paulw11