Würde jemand bitte zeigen Sie mir ein kleines Code-Beispiel geschrieben in C# innerhalb der Xamarin.iOS-Framework, die Textur-Atlanten laden würde?Wie lädt man Texturatlas (SKTextureAtlas) in Xamarin.iOS (in C#)?
Xamarin Website hat diese Seite:
https://developer.xamarin.com/api/type/MonoTouch.SpriteKit.SKTextureAtlas/
Auf dieser Webseite, listen sie die vielen Methoden, die die Texturatlanten vorzuladen. Aber, ich bin daran interessiert sind nur in diesen zwei spezifischen Methoden:
PreloadTextures (SKTextureAtlas [], NSAction)
PreloadTexturesAsync (SKTextureAtlas [])
ich beide Methoden erraten gut funktionieren wird für mein Spiel. Leider weiß ich nicht, wie man sie in C# innerhalb des Xamarin.iOS-Frameworks richtig aufruft.
Während es viele Codebeispiele zum Vorladen von Texturatlanten im Web gibt, sind diese Beispiele in Objective-C geschrieben, und leider weiß ich nicht, wie ich Objective-C-Code in C# -Code umwandeln soll.
Also, ich würde sehr schätzen, wenn Sie mir zeigen könnten, wie man einige kleine Code-Proben in C# innerhalb des Xamarin.iOS-Framework, die Textur-Atlanten vorladen, mit den 2 Methoden, die ich oben erwähnt.
Vielen Dank.
Vielen Dank für Ihre ausgezeichnete Antwort sehr viel zu schaffen. Ich werde heute deinen Code ausprobieren und ihn als "Beantwortet" markieren. BTW, ich frage mich, ob ich die Methode mit dem Completion-Handler "PreloadTextures (SKTextureAtlas [], NSAction)" verwende, bedeutet es, dass ich noch andere Dinge tun kann, wie zum Beispiel das Ausdrucken von Textnachrichten während des Vorladens? Oder bedeutet es, dass ich immer noch nichts im Code tun kann, während das Vorladen noch läuft? (Danke nochmals im Voraus.) – Thanh
Von was ich in der Apple-Dokumentation gelesen habe, wird diese Methode im Hintergrund ausgeführt, die Xamarin-Async-Methode ist einfach ein Wrapper darum und es gibt keinen Grund, warum Sie den NSAction-Rückruf nicht verwenden können Mechanismus. Alternativ können Sie Task.ContinueWith verwenden, um in der C# -Welt zu bleiben. –
Ihre Erklärung ist absolut richtig. Alle async/await-Methoden in C# und iOS laufen nur im Hintergrund und blockieren NICHT den Fluss des Programms oder der App. Ich probiere deinen Code heute aus, und es funktioniert einwandfrei. Das ist wundervoll. Vielen Dank für deine Hilfe. (Stackoverflow ist ein tolles Forum :-)) – Thanh