Xamarin Formulare - Erstellen von Apps in C# - Anfänger bis Fortgeschrittene ✅ | Grant Klimaytys | Skillshare

Playback-Geschwindigkeit


  • 0.5x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 2x

Xamarin Formulare - Erstellen von Apps in C# - Anfänger bis Fortgeschrittene ✅

teacher avatar Grant Klimaytys, Software Engineer

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu jedem Kurs
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Eine Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu jedem Kurs
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Eine Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

28 Einheiten (2 Std. 45 Min.)
    • 1. Einführung

      3:13
    • 2. Xamarin auf einem Mac

      5:09
    • 3. Xamarin auf einem PC (Visual Studio)

      5:09
    • 4. Xamarin auf einem Mac mit Xamarin auf einem PC verknüpfen (optional)

      2:58
    • 5. Der Unterschied zwischen Xamarin Studio auf dem Mac / PC und Visual Studio

      2:42
    • 6. Wann du Xamarin verwendest, und wann du es nicht verwendest.

      5:12
    • 7. Das Modell der View (MVVM) Paradigm verstehen

      3:04
    • 8. Erstellen eines Xamarin "Hello World"

      7:32
    • 9. Xamarin iOS- und iOS einrichten und "Hello World" laufen

      8:04
    • 10. Ändern unseres Layouts und der Elemente

      6:37
    • 11. Einführung in das gerade erledigen X 1

      0:45
    • 12. Verschaffen unserer app

      3:42
    • 13. Erstellung der grafischen XAML Elemente unserer App

      10:13
    • 14. Den wichtigsten app schreiben - Benutzereinstellungen zum Speichern von Daten

      9:44
    • 15. So fügen Sie Google Admob Ads in eine Xamarin App hinzu

      19:01
    • 16. Einführung in das gerade erledigen X 10

      1:30
    • 17. Tun Sie es X 10 App Design und erste Seite XAML

      14:33
    • 18. Was ist eine SQLite-Datenbank und warum verwende sie?

      2:25
    • 19. Installation einer Nuget zur Verwaltung von Installing

      1:31
    • 20. Database - So bekommst du eine plattformübergreifende SQLite Datenbankverbindung

      10:59
    • 21. Database - So stecken und löschen und abrufen von Elementen

      6:25
    • 22. So erstellen Sie ein Datenmodell

      3:38
    • 23. So fügen Sie Datenbankelemente in eine Listenansicht ein

      9:16
    • 24. So binden von Variablen zwei Möglichkeiten in Xamarin

      4:08
    • 25. So öffnen Sie eine neue Seite, einen Controller oder eine Aktivität in Xamarin-Formularen

      4:33
    • 26. Das XAML des of bearbeiten erstellen

      4:36
    • 27. Speichern der bestellten Aufgabe in die Datenbank

      6:37
    • 28. Ein kurzer Rückschnitt von allem, was du gelernt hast

      2:09
  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Alle Niveaus

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

584

Teilnehmer:innen

--

Projekte

Über diesen Kurs

Erstellen Sie gleichzeitig fantastische Apps auf iOS und Android mit Xamarin Forms 2.0!

Deine Apps werden in einem einzigen Projekt mit freigegebenem Code erstellt. Dieser Code ist in C#, der einfachste und beliebteste Code um!

Das bedeutet:

  • Kein Java zu lernen (Android).
  • Kein Schnelles Lernen (iOS).

Du wirst von Anfänger zu vollkommen qualifizierter in Xamarin Forms 2.0 gehen (veröffentlicht Ende 2015).

KEIN ANDERER Kurs führt dich so einfach durch den Prozess und in so viel Details und klicke jetzt auf ENROLL

b2111d30


Dieser Kurs ist für dich, wenn du willst:

  • Lerne den Xamarin Forms 2.0 Entwicklungsprozess – vom kompletten Anfänger zum anspruchsvollen App-Entwickler
  • Bekommen Sie $100 - $150 pro Stunde für die Erstellung von Apps für die Zahlung von Kunden
  • Erstellen Sie deine eigenen wildly Apps
  • Sieh den gesamten Entwicklungsprozess an, wie es wirklich ist.
  • Hast du eine echte App, die du unter deinem eigenen Konto veröffentlichen kannst

Welche Software brauchst du?

  • Xamarin Studio (kostenlose Starter-Edition oder kostenlose Business Testversion verfügbar).
  • PC oder Mac

Benötigen Sie Erfahrung?

  • Nein. Ich nehme an, du bist ein kompletter Anfänger in die Xamarin

Triff deine:n Kursleiter:in

Teacher Profile Image

Grant Klimaytys

Software Engineer

Kursleiter:in

My very first software program was the artificial intelligence brain of an underwater robot in the early 2000's, still the coolest project I have ever worked on!

Since then I have designed and built websites, software and apps using all manner of languages and frameworks. Javascript, Bootstrap, .Net, Python, PHP - you name it, I've probably used it.

These days I focus on building quality cross platform apps using Xamarin studio in C#, Xcode and Swift 2 and Android Studio.

If you're considering becoming a freelance developer then I can honestly say it is the best life in the world. You will have no boss, earn an hourly rate of $60 - $150 and take holiday whenever you want!

Of course you have to learn how to make good apps first, which brings me to my second pa... Vollständiges Profil ansehen

Kursbewertungen

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%
Bewertungsarchiv

Im Oktober 2018 haben wir unser Bewertungssystem aktualisiert, um das Verfahren unserer Feedback-Erhebung zu verbessern. Nachfolgend die Bewertungen, die vor diesem Update verfasst wurden.

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen bei Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

Transkripte

1. Einführung: Hallo, da. Und willkommen zu diesem Kurs zum Erstellen von Karten mit Xamarin-Formen. Jetzt, Sammer informiert, ist Teil der Xamarin-Plattform und Formulare, geht es einen Schritt weiter und ermöglicht Ihnen, APS auf Android Windows und Mac und ich uns in C scharf mit einer einzigen Codebasis zu erstellen . Und ich werde Ihnen zeigen, wie man das mit den brandneuen Xamarin-Formen macht. Zwei Punkte. Oh, ich nehme das im Jahr 2016 auf, wenn Xamarin 2.0 formt, gerade rausgekommen ist. Und wenn Sie ein Anfänger in Samrin sind, dann ist dieser Kurs perfekt für Sie. Wenn Sie ein Veteran von Samrin sind, aber noch keine Formulare verwendet haben. Dann ist dieser Kurs auch perfekt für Sie. In diesem Kurs lernen wir, wie man drei APS macht. Die 1. 1 ist eine einfache Hello World App. Die zweite 1 ist die, die Sie betrachten, die eine einzelne zu tun Listenelement App ist. Und da drin werden wir lernen, wie man Dinge anlegt, wie man Buttons erstellt, Ereignisse um diese Schaltflächen herum. Und dann, wenn Sie bemerkt haben, haben wir dies auf einem iPhone und einem Android-Simulator ausgeführt und beide APS haben 95% Rabatt auf den gleichen Code verwendet , so dass ich nur zwei Code einmal für zwei völlig verschiedene Plattformen hatte. Dann werden wir weitermachen, und wir werden ein Mal 10 schaffen. Tun Sie es einfach App. Wo wird eine Reihe von Aufgaben zu schaffen? Und diese Aufgaben werden in einer Listenansicht gespeichert, die je weiter unten die Liste, die Sie gehen, erhellt so dass es platziert und natürliche Bedeutung auf, was ist ein Top? Und wenn wir auf eines der Elemente klicken, öffnet es einen Bearbeitungsbildschirm und beschreibt auch, dass in diesem Kurs, wie neue View-Controller oder Aktivitäten aus einer Listenansicht geöffnet werden. Dann, in diesen Feldern, können Sie den Text auf diesem Text ändern, bindet eine Eigenschaft im Code dahinter automatisch, und ich werde Ihnen das zeigen. Und das ist der Schlüssel dafür, sagt Sammer. Sie müssen wissen, wie das funktioniert, um APS zu erstellen, und wenn wir sicher treffen, wird das in einer Datenbank ein sq light ein und wieder gespeichert. Welche App Sie in welcher Sprache auch immer erstellen, müssen Sie Quadrat-Light-Datenbanken kennen und ich führe Sie durch alles. Also begleite mich in diesem Kurs, ich bin ein spannender Lehrer. Und wann immer ich unterrichte, möchte ich sicherstellen, dass meine Schüler alles wissen, was vor sich geht, alle Hintergrundfunktionen und warum wir bestimmte Dinge tun, weil einige Lehrer einfach sagen: Lassen Sie uns eine Datenbank erstellen. Aber warum? Warum sollten Sie eine Datenbank erstellen? Und ich führe dich durch all diese Dinger? Am Ende dieses Kurses wirst du also eine gute, solide Erdung haben, solide Erdung haben, nicht nur Nzama informiert, sondern auch in der C-scharfen Programmierung. Also kommen Sie heute zu mir. 2. Xamarin auf einem Mac: Also lasst uns mit der Installation von Exam Oring auf unserem Mac beginnen. Geh rüber zu Samarinda dot com auf dieser ersten Seite. Wenn Sie nach unten scrollen, sollten Sie einen Link haben, um Samarie herunterzuladen. Gehen Sie voran, klicken Sie darauf, dass es eine neue Seite öffnet, fragen Sie nach ein paar Details. Füllen Sie diese aus und laden Sie dann Stottern für OS X herunter. Starten Sie Ihr Installationsprogramm, wenn es heruntergeladen wird, und doppelklicken Sie dann auf das Symbol. Und der Zaman Installateur ist ziemlich gut darin, Ihre Hand zu halten durch den gesamten Prozess für die Installation zu gehen. Also zuerst müssen Sie einigen Bits and Stücken zustimmen , usw cetera. Andi. Es erkennt Ihre verschiedenen Android s zerfällt und zerfällt. Detective, wir haben X-Code auf dem ganzen Rest davon. Es installiert auch hämmern Punkt Mac. Sie möchten also alle diese Produkte installieren? Klicken Sie auf Weiter. Es fragt Sie, wo sich Ihr SDK befindet oder wo Sie es installieren möchten? Puppet, wo immer es vorschlägt, und dann einfach klicken Sie auf Weiter und alles wird installiert. Und während das in den Geschäften, Ich werde nur wieder zu meinem Web-Browser kommen und darauf hinweisen, dass Sie eine 30-Tage-Testversion kostenlos von Samrin Business Edition starten können . Nun für diese Tutorials, ist es wahrscheinlich eine gute Idee, diese Ergänzung oder zumindest die Indie-Entwickler-Edition zu haben. Also, wenn Sie über zwei Entwickler dot zaman dot com oder einfach auf Google Xamarin Studie suchen , werden Sie auf diese Seite und wieder kommen. Es ist sehr gut, durch das zu gehen, was Sie tun müssen, um Ihre Testversion zu aktivieren. Da ist ein Haufen Zeug und los geht's. Ok. Sie können auch einen Blick auf die Preise auf xamarin dot com werfen. Andi Es ist in letzter Zeit ziemlich viel runter gegangen, weil ich denke, eine Software ist reifer und sie haben mehr Entwickler an Bord. Es gibt mehr eine stabile finanzielle Lage. Okay, jetzt, wo das geladen ist, können Sie sehen, dass Sie drei Möglichkeiten haben. In der Tat, Unternehmen und Unternehmen. Und, natürlich, Indie-ist viel billiger, etwa $300 pro Jahr im Vergleich zu Unternehmen, das $1000 pro Jahr. Und diese sind pro Plattform. Also Sie zahlen ich uns so viel pro Monat und fügen Sie dann weitere 25 für Android oder Mac oder andere, die Sie hinzufügen möchten. Nun, ich würde sagen, die Indy-Ergänzung ist völlig in Ordnung. Wenn Sie ein Soul-Entwickler sind, weil Sie Visual Studio wahrscheinlich nicht verwenden, benötigen Sie nur Visual Studio-Integration, wenn Sie es einfach verwenden möchten. Aber das Xamarin-Studio ist ein ziemlich gutes I D, wie es ist, und Sie werden Visual Studio benötigen, um mit Windows Phone zu integrieren. Wenn Sie also auf Windows Phone mit Zamarripa veröffentlichen möchten, benötigen Sie mindestens die Geschäftslizenz. Andernfalls können sowohl IOS als auch Android mit Indy veröffentlicht werden. , Wenn Sie ein kleines Unternehmen sind,lohnt es sich, sich, Amarin zu klingeln und ihnen das zu sagen, weil sie Ihnen vielleicht besondere Preise geben . Und auch, wenn Sie Student sind, können Sie das kostenlos bekommen. Wenn Sie sich im Schlepptau anmelden. Microsoft Dreams Buck. Also wieder, suchen Sie einfach auf Google nach, und Sie werden es finden. Sobald die Installation abgeschlossen ist, haben Sie einfach einen Link, um Xamarin Studio zu starten, und los geht's. Also habe ich gerade den Installer geschlossen, während Lachs geladen wird und da gehen wir. Zaman ist jetzt installiert und bereit zum Rocken und Rollen. Es gibt ein paar Dinge auf der rechten Seite hier, wo Sie surfen können. Sie sind sehr Lösungen für die Dinge auf In der Mitte ist eine Liste aller ihrer blawg Beiträge , die sie tun und diese Luft gelegentlich interessant. Also, wenn sie eine Nachricht Amarin angekündigt, ist es gut, darauf zu klicken und zu sehen, was neu ist. Jetzt wird dieser Kurs auf Xamarin vier gelehrt. Also dieser Top Blogge-Beitrag hier ist derjenige, den ich unterrichte, und das ist ihre neue Veröffentlichung. Es wurde veröffentlicht in, Ich glaube, Dezember 2015 auf. Ich nehme das im Jahr 2016 auf und wir werden weiterlaufen, Samarie informiert zwei Punkte. Oh, also müssen Sie sich keine Sorgen um Kompatibilität für ein oder zwei gute Jahre machen, aber ich habe ein paar andere Kurse dort draußen für Xamarin-Formen gesehen , die weit zurück im Jahr 2014 geschrieben wurden und diese Luft immer noch an einem Punkt stecken. Oh, also bin ich einfach müde von einigen der anderen Kurse und halte immer Ausschau nach den neueren, aktualisierten Kursen 3. Xamarin auf einem PC (Visual Studio): Also lasst uns mit der Installation von Exam Oring auf unserem Mac beginnen. Geh rüber zu Samarinda dot com auf dieser ersten Seite. Wenn Sie nach unten scrollen, sollten Sie einen Link haben, um Samarie herunterzuladen. Gehen Sie voran, klicken Sie darauf, dass es eine neue Seite öffnet, fragen Sie nach ein paar Details. Füllen Sie diese aus und laden Sie dann Stottern für OS X herunter. Starten Sie Ihr Installationsprogramm, wenn es heruntergeladen wird, und doppelklicken Sie dann auf das Symbol. Und der Zaman Installateur ist ziemlich gut darin, Ihre Hand zu halten durch den gesamten Prozess für die Installation zu gehen. Also zuerst müssen Sie einigen Bits and Stücken zustimmen, usw cetera, usw.. Andi. Es erkennt Ihre verschiedenen Android s zerfällt und zerfällt. Detective, wir haben den X-Code auf dem ganzen Rest davon. Es installiert auch hämmern Punkt Mac. Sie möchten also alle diese Produkte installieren? Klicken Sie auf Fortfahren. Es fragt Sie, wo sich Ihr SDK befindet oder wo Sie es installieren möchten? Puppet, wo immer es vorschlägt, und dann einfach klicken Sie auf Weiter und alles wird installiert. Und während das in den Geschäften, Ich werde nur wieder zu meinem Web-Browser kommen und darauf hinweisen, dass Sie eine 30-Tage-Testversion kostenlos von Samrin Business Edition starten können . Nun für diese Tutorials, ist es wahrscheinlich eine gute Idee, diese Ergänzung oder zumindest die Indie-Entwickler-Edition zu haben. Also, wenn Sie über zwei Entwickler dot zaman dot com oder einfach auf Google Xamarin Studie suchen , werden Sie auf diese Seite und wieder kommen. Es ist sehr gut, durch das zu gehen, was Sie tun müssen, um Ihre Testversion zu aktivieren. Da ist ein Haufen Zeug und los geht's. Ok. Sie können auch einen Blick auf die Preise auf xamarin dot com werfen. Andi Es ist in letzter Zeit ziemlich viel runter gegangen, weil ich denke, dass eine Software reifer ist und sie mehr Entwickler an Bord haben. Es gibt mehr von einer stabilen finanziellen Lage. Okay, jetzt, wo das geladen ist, können Sie sehen, dass Sie drei Möglichkeiten haben. In der Tat, Unternehmen und Unternehmen. Und, natürlich, Indie-ist viel billiger, etwa $300 pro Jahr im Vergleich zu Unternehmen, das $1000 pro Jahr. Und diese sind pro Plattform. Also Sie zahlen ich uns so viel pro Monat und fügen Sie dann weitere 25 für Android oder Mac oder andere, die Sie hinzufügen möchten. Nun, ich würde sagen, die Indy-Ergänzung ist völlig in Ordnung. Wenn Sie ein Soul-Entwickler sind, weil Sie Visual Studio wahrscheinlich nicht verwenden, benötigen Sie nur Visual Studio-Integration, wenn Sie es einfach verwenden möchten. Aber das Xamarin-Studio ist ein ziemlich gutes I D, wie es ist, und Sie werden Visual Studio benötigen, um mit Windows Phone zu integrieren. Wenn Sie also auf Windows Phone mit Zamarripa veröffentlichen möchten, müssen Sie mindestens die Business-Lizenz haben. Andernfalls können sowohl IOS als auch Android mit Indy veröffentlicht werden. , Wenn Sie ein kleines Unternehmen sind,lohnt es sich, sich, Amarin zu klingeln und ihnen das zu sagen, weil sie Ihnen vielleicht besondere Preise geben . Und auch, wenn Sie Student sind, können Sie das kostenlos bekommen. Wenn Sie sich im Schlepptau anmelden. Microsoft Dreams Buck. Also wieder, suchen Sie einfach auf Google nach, und Sie werden es finden. Sobald die Installation abgeschlossen ist, haben Sie einfach einen Link, um Xamarin Studio zu starten, und los geht's. Also habe ich gerade den Installer geschlossen, während Lachs geladen wird und da gehen wir. Zaman ist jetzt installiert und bereit zum Rocken und Rollen. Es gibt ein paar Dinge auf der rechten Seite hier, wo Sie surfen können. Sie sind sehr Lösungen für die Dinge auf In der Mitte ist eine Liste aller ihrer blawg Beiträge , die sie tun und diese Luft gelegentlich interessant. Also, wenn sie eine Nachricht Amarin angekündigt, ist es gut, darauf zu klicken und zu sehen, was neu ist. Jetzt wird dieser Kurs auf Xamarin vier gelehrt. Also dieser Top Blogge-Beitrag hier ist derjenige, den ich unterrichte, und das ist ihre neue Veröffentlichung. Es wurde veröffentlicht in, Ich glaube, Dezember 2015 auf. Ich nehme das im Jahr 2016 auf und wir werden weiterlaufen, Samarie informiert zwei Punkte. Oh, also müssen Sie sich keine Sorgen um Kompatibilität für ein oder zwei gute Jahre machen, aber ich habe ein paar andere Kurse dort draußen für Xamarin-Formen gesehen , die weit zurück im Jahr 2014 geschrieben wurden und diese Luft immer noch an einem Punkt stecken. Oh, also bin ich einfach müde von einigen der anderen Kurse und halte immer Ausschau nach den neueren, aktualisierten Kursen 4. Xamarin auf einem Mac mit Xamarin auf einem PC verknüpfen (optional): Lassen Sie uns unseren Mac und Windows-PC miteinander sprechen, damit der Windows-PC bauen kann. Ich werde jetzt für uns saps untersuchen. Dies wurde früher mit dem I. R verschütteten Wirt gemacht , aber es ist nicht mehr so gemacht. Es ist auf eine viel bessere Art und Weise gemacht, und das verwendet Ssh. Das erste, was wir einrichten müssen, ist unsere Remote-Anmeldung, und das ist unter Freigabe. Und dann möchten wir auf Remote Login klicken auf. Und jetzt lassen Sie uns den Zugriff für alle zulassen. Die Benutzer waren gerade dabei, dies auf alle Benutzer zu testen, beseitigt Probleme mit, wenn wir Benutzer einschränken. Also Testversion verwendet zuerst und dann versuchen Sie nur Administrator und gehen Sie voran und schließen Sie das. Und das ist alles, was Sie wirklich auf Ihrem Mac tun müssen, um auf unserem Windows-Gerät darauf zugreifen zu können. Um unseren Mac zu verbinden, müssen wir nur Werkzeuge, Optionen und dann weiter unten unten drücken . Wir haben Samrin und ich sind Einstellungen, und alles, was wir tun müssen, ist klicken Sie finden Zam bringen Agent zurück und da ist es. Wählen Sie es also aus und drücken Sie Connect. Es wird Sie nach dem Benutzernamen und Passwort fragen, also werde ich einfach eingeben, dass Done es zuerst nehmen, und das sollte sich verbinden. werde nur zulassen, dass auf der Sache, die ich es einfach zu schnell erlaubt, für Sie zu sehen war der Mono Dash s Gin. Und das war eine Firewall-Ausnahme, die Sie möglicherweise auf Ihrem Mac hinzufügen müssen. Also, wenn Sie einfach auf den Kopf über die Firewall auf die Sicherheit und Privatsphäre in Ihrem Mac, es ist nur etwas, um sich bewusst zu sein, dass Sie tatsächlich toe es zu dieser Liste hinzufügen können. Wenn ich dort zu Firewall-Optionen gehe, habe ich Mono-Frage. Wenn es also nicht für Sie funktioniert, erlauben Sie dies einfach. Ich werde das nur schließen. Wie Sie aus meinem Wechsel sehen können,führe ich dies tatsächlich in einer virtuellen Windows-Maschine auf meinem Mac aus. Wie Sie aus meinem Wechsel sehen können, Innerhalb von Parallels 10 und alles funktioniert gut, so dass Sie nicht unbedingt eine völlig andere Maschine haben müssen. Aber es ist schöner, weil du nativ laufen kannst. Das schließt alles, was Sie brauchen, um Ihren PC mit Ihrem Mac für die IOS-Entwicklung zu verbinden 5. Der Unterschied zwischen Xamarin Studio auf dem Mac / PC und Visual Studio: Lassen Sie uns den Unterschied zwischen Xamarin Studio und Visual Studio für die APP-Entwicklung diskutieren. Wenn Sie Xamarin Studio auf einem Mac ausführen, dann, wenn Sie eine neue plattformübergreifende Lösung erstellen, wird es I US und Android für Sie erstellen. Es wird kein Windows Phone-Projekt erstellt. Wenn Sie Xamarin studio auf einem PC ausführen, erhalten Sie dasselbe. Es werde ich uns auf und Android sein. Ich bin mir nicht sicher, ob es Windows Phone installiert, aber ich glaube nicht, dass es das tut. Schließlich, wenn Sie Xamarin in Visual Studio ausführen, die offensichtlich auf einem PC ist, als es alle drei für Sie tut, tut ich Us Android und Windows Phone. Jetzt spielt es keine Rolle, wo du anfängst. Nehmen wir an, Sie starten auf dem Mac und Sie erhalten Ihr Windows Phone-Projekt nicht. Sie können das Projekt immer in Visual Studio auf einem PC öffnen und Windows Phone zu diesem Zeitpunkt hinzufügen , und Sie können alle plattformübergreifenden Tools nutzen. Es spielt keine Rolle, wann es geschaffen wurde. Bedenken Sie, wenn Sie auf einem Mac laufen, offensichtlich können Sie nicht für Windows Phone kompilieren, was der Hauptgrund ist, dass es kein Windows Phone-Projekt erstellt. Und wenn Sie auf Visual Studio auf einem PC laufen. Dann können Sie für Android und Windows Phone kompilieren. Aber ich uns wird einen verbundenen Mac im gleichen Netzwerk benötigen, um einen Build-Client zu haben, so dass Sie einen Mac benötigen. ob es sich um eine virtuelle Maschine oder einen tatsächlichen Mac handelt, es ist dasselbe. Wenn Sie Xamarin Studio auf einem PC ausführen, benötigen Sie einen Mac in Ihrem Netzwerk, um Ihre I US APs laufen zu lassen und sie in Bezug auf die I. D. E. Erfahrung ist die eigentliche Entwicklung. Es hängt von persönlichen Vorlieben ab. Sie können entweder Zaman Studio oder Visual Studio verwenden. Beide sind ziemlich gut in dem, was sie tun. Offensichtlich, wenn Sie ein Punktnetz Junkie sind, werden Sie Visual Studio wegen der erstaunlichen Funktionen, die im Inneren, dass ich d sind.Aber auf beiden Plattformen, erhalten Sie auch Zugang zu neuen erhalten auf, und Sie erhalten Sie auch Zugriff auf den Xamarin-Speicher, mit dem Sie Komponenten und Dinge in Ihre Projekte eingeben können. 6. Wann du Xamarin verwendest, und wann du es nicht verwendest.: Lassen Sie uns darüber sprechen, wann man einen Hammer und Formulare benutzt. Im Allgemeinen werden wir Formulare verwenden, wenn wir eine einfache App haben, die die gleichen grafischen Elemente über alle Plattformen oder ähnliche Elemente verfügt . Ein Beispiel für diese Elemente wäre eine Schaltfläche in einer Listenansicht oder ein Schalter, so etwas. Sie müssen also sehr sorgfältig über Ihre App nachdenken, bevor Sie entscheiden, welche Art von Projekt ausgeführt werden. Und wenn alle Elemente in Ihrer App für alle drei Plattformen Apple, Android und Windows gemeinsam sind , dann können Sie gehen und Formulare verwenden. Bedenken Sie jedoch, dass die Fähigkeit, diese Elemente zu verfeinern, begrenzt ist. Wenn Sie hämmern Formen verwenden, ist es viel besser, aber es ist immer noch begrenzt. Nehmen wir an, Sie haben zum Beispiel nur eine einfache gemacht , die ich nicht weiß. Lass uns sehen. Ah, tauschen Sie die App aus. Sie haben nur wirklich eine Liste von Sachen, und Sie würden sich nicht so sehr darum kümmern, das Aussehen zu verfeinern, weil es die Funktionalität ist , die für die Benutzer wichtig ist. So würden Sie in der Lage sein, drei APS in fast derselben Zeit heraus zu bekommen. Es braucht Sie, um eine App jetzt zu tun, die andere Option, wenn Sie sich öffnen, Samrin ist die klassische Xamarin nahe Cross-Plattform-App zu tun. Nun ist dies, wenn Sie eine komplexe App in Bezug auf die G A y haben. Die Hintergrunddatenverarbeitung kann komplex sein, war einfach. Es spielt keine Rolle. Es hat keinen Einfluss auf die Verwendung von Formularen oder die klassische Cross-Plattform. So nutzt Ihre komplexe App G Y-Elemente, die für jede Plattform spezifisch sind. Und ich kann mir keine Beispiele aus meinem Kopf vorstellen, wahrscheinlich, weil Sambans ziemlich gute Arbeit geleistet haben, sie alle einzubeziehen. Aber es wird Zeiten geben, zum Beispiel Sie zum Beispielauf ein bestimmtes Element zugreifen möchten, das nur in I uns verfügbar ist. Und in diesem Fall würden Sie die klassische Cross-Plattform-App verwenden. Das ist also auf einem sehr hohen Niveau, fasst die Unterschiede zwischen den Formen auf der klassischen Cross-Plattform zusammen. Nun, offensichtlich, wenn Sie sich auf Formularen entwickeln, ist es viel schneller, definitiv. So verlieren Sie etwas Macht über Individualisierung und wenn Sie sich plattformübergreifend entwickeln, erhalten Sie diese Energie zurück, aber Sie müssen mehr Zeit auf jeder Plattform verbringen. In beiden Fällen werden wir einen Datenbank-Layer haben, und das wird unabhängig sein, waren kein Datenbank-Layer , sondern ein Daten-Layer. Das ist eine bessere Beschreibung. Und diese Datenschicht wird unabhängig vom GeoEye sein, ob auf Formularen oder plattformübergreifend. Dies wird also Ihr freigegebener Codeabschnitt sein. Dann haben Sie eine Datenzugriffsebene, die die Datenschicht mit dem G y Ihrer App verbindet . In einigen Fällen kannsich diese Datenzugriffsebene auf bestimmte Dinge stützen, die auf einer Plattform basieren. In einigen Fällen kann Es hängt wirklich, wirklich davon ab. Also, bevor Sie sich für Formulare oder Zaman Cross-Plattform entscheiden, wirklich Speck aus Ihrem Rap und entscheiden, was Sie brauchen. Wenn ich also nur ein einfaches Beispiel für diese Swap-App nehme, würde meine Datenzugriffsebene einfach online auf eine Art Datenbank zugreifen und mir eine Liste von Objekten geben , die alle meine Plattformen verwenden können. Das wäre also perfekt für eine Formular-App. Wenn ich auf eine Liste von Dingen zugreife, die spezifisch für ein iPhone waas sind, würden Formulare problematisch werden, würden Formulare problematisch werden, und das ist, wenn ich plattformübergreifend gehe. Also, nur damit Sie sich dessen bewusst sind, hoffe ich, dass es Sinn ergibt. Und wenn Sie etwas mehr darüber lesen müssen. Schauen Sie einfach auf die Lachs-Website und sie erklären. Im Grunde, was ich gerade gesagt habe, ist, dass, wenn Sie eine einfache App haben, mit Formularen gehen. Das letzte, bevor wir diesen Vortrag beenden, ist, wenn du o c d bist und du die Dinge so magst, wie du sie magst, dann mach keine Formulare auf, weil es sehr schwierig ist, es so zu bekommen. Aber wenn Sie wie ich sind und Sie wollen nur ein Testprodukt da draußen, ein Minimum lebensfähiges Produkt, dann greifen Sie Formulare, dann greifen Sie Formulare, drehen Sie etwas auf und legen Sie es da draußen, um zu sehen, ob es auf fängt. 7. Das Modell der View (MVVM) Paradigm verstehen: Schauen wir uns an, wie APs Nzama Rin Andi entworfen werden. Tat, in der Muttersprache ist, dass sie das Modell View View Modell oder MVV M für kurz verwenden . Das erste, was wir wissen müssen, ist, dass M V V M eine Ableitung vom Modellansicht-Controller M V C ist. Auf NBC nimmt ein Modell, also ist dies eine Art Datenschicht aus Ihrer App, und dieses Modell aktualisiert einen View-Controller, und dieser Controller informiert die Ansicht, dass wir, wie der Benutzer jetzt tatsächlich sehen, wie es sich herausgestellt hat, seit NBC auf die Szene kam, ist, dass der View-Controller das Modell besitzt. So wird ein Großteil der Kernlogik des Programms tatsächlich innerhalb des View-Controllers gespeichert. Und aus Sicht der Programmierung ist das nicht gerade ideal für die Wiederverwendung von Code. Also nur in Bezug auf eine reale Welt, reale Welt Beispiel, wenn Sie eine Datenbank oder Web-Datenbank auf seiner Kommunikation mit Ihrem Rap haben, die einen View-Controller auf I uns oder eine Aktivität auf Android hat und das Aktualisieren der Bildschirm von Ihrem Telefon, also schauen wir uns dieses Problem an. Und dieses Problem ist, dass die meisten Logik innerhalb der Ansicht, des Controllers oder der Aktivität gespeichert wird . Und wenn wir es in einer anderen Ansicht wiederverwenden wollen, müssen wir es neu schreiben. Und das ist natürlich nie ideal. Und so Neid. VM war in einigen Aspekten die Lösung dafür, und M V V M ist genau wie Modellansicht-Controller M. V. C. Außer wir haben ein Modell. Und dann fügen wir eine zusätzliche Ebene ein, die ein Ansichtsmodell ist, und die mit dem View-Controller oder Aktivität kommuniziert und uns dann die Ansicht zur Verfügung stellt . Jetzt ist dies perfekt für die plattformübergreifende Entwicklung auf dem, was Samrin tut, ist es eine Markup-Sprache namens Zamel, und es modifiziert es in gewisser Weise für sich. Und wenn Sie ein Windows-Entwickler sind, wissen Sie, dass Zamil Nzama Erin nicht das gleiche wie in Windows ist. Das ist nur eine Sache, die man sich bewusst sein muss. Und dann, mit jeder Zamel-Datei, definieren Sie das visuelle Layout auf Ihrer Plattform auf ein Gerät oder ah, betriebssystemunabhängige Weise. So definieren Sie eine Datei für IR San Droid und Windows Phone auf. Dann haben wir eine Codedatei, die hinter dieser Zamel-Datei sitzt, die die Verbindung zu Ihrer Codebasis bereitstellt , also bin ich hier überhaupt nicht vertieft. Ich möchte nur, dass Sie die Idee hinter den Konzepten von Xamarin Punktformen bekommen und Schlüssel ist der Zamel und Code hinter dem Zamel. 8. Erstellen eines Xamarin "Hello World": Werfen wir einen Blick auf, wie Prüfung erstellen oder informiert Projekt. Öffnen Sie, stottern. Ich führe dies auf einem Mac aus, aber es wird auf einem PC nur minus der I R-Lösung dasselbe sein. Klicken Sie auf Neue Lösung. Andi Auf der linken Seite werden Sie sehen, dass wir viele Möglichkeiten haben. Cross-Plattform, fragte ich, etcetera. Wenn ich nur durch ein paar von diesen geklickt, können Sie sehen, dass wir die klassische IOS-Apsis von Einzelansicht, eine Registerkarte, App, diese Art von Sache bekommen eine Registerkarte, App, . Gleiche Art von Sache für Android. Und wir können auch von Mac erstellen. Moment werden wir Cross-Plattform-App wählen. Und jetzt haben wir hier zwei Möglichkeiten. Wir können Samrin Entenformen verwenden. Nun, wir können eine einzelne View-App verwenden. Eine einzelne View-App ist eigentlich nur die plattformübergreifende native App, und es ist die klassische Art und Weise, dass Zaman Dinge getan hat. Aber das ist der Kurs auf Sammer und Formulare, also lasst uns voran gehen und die Formulare auswählen und treffen. Als nächstes müssen wir es einen Namen geben, also nennen wir diese App ein, und wir haben zu gegebener Organisation identifizieren, also werde ich einfach Unternehmen dort und so sind Identifizierungen auf Android und IOS wird hier unten sein com dot Firma dot app eins und dies muss einzigartig in der App-Welt sein und dann unten, dass wir beide Plattformen zielen wollen und dann haben wir einige Optionen. Wenn wir unsere Lösung erstellen, erstellen wir ein gemeinsames Code-Projekt. Jetzt können Sie entweder mit einer portablen Klassenbibliothek beginnen oder Sie können auch eine gemeinsam genutzte Bibliothek verwenden . Es gibt keinen Grund, dass Sie nicht beides in Ihrem Projekt haben können. Der Unterschied ist ah, die portable Klassenbibliothek stützt sich auf den niedrigsten gemeinsamen Nenner. Wenn Sie also etwas in einer PCL deklarieren, muss es auf allen Plattformen unterstützt werden, auf denen Sie eine Schuppenbibliothek abzielen. Sie können bedingte Compiler dort haben. Also, wenn Sie kommen, um für ich uns zu kompilieren, können Sie einen separaten Codeblock haben, den Sie stattdessen betrachten. Wenn Sie für Android kompilieren, könnten wir uns einen anderen Codeblock ansehen und diese sind einfach, wenn sonst Anweisungen, die sich auf welche Plattform beziehen, für die Sie jetzt kompilieren, verwenden wir eine portable Klassenbibliothek auch, weil Eine PCL ist transportierbar, Sie können es in eine DLL einbinden und Sie können es anderen Entwicklern übergeben, um sie zu verwenden. Sie können das nicht mit einem geteilten Mediathek als Nächstes tun. Es wird Sie nach einem Namen fragen, einer Lösung, Namen, wo Sie es setzen sollen usw. Sie können get für die Versionskontrolle verwenden, aber ich werde das gerade ausschalten. Sie können auch Einblicke und Test-Cloud haben, aber wir werden diese für jetzt verlassen. Und wenn Sie drücken, erstellen Zaman durchlaufen und erstellen Sie die notwendigen Dateien für Sie. Und in Ihrer Lösung werden Sie drei Hauptverzeichnisse haben, eines mit Ihrem Lösungsnamen AP eins und dann ein Nickerchen auf Doc Droid und einen Punkt ich uns. Und wie Sie sich vorstellen können, der Doc Droid bezieht sich auf Android und IOS bezieht sich auf ich uns. Und wenn ich diese drei Ordner erweitern und wir schauen uns den oberen ohne eine Erweiterung am Ende an. Dies ist die portable Klassenbibliothek oder das Shared Code-Projekt, das von AP ein Doc Droid und ap one dot i uns referenziert wird. Also, wenn Sie unter Referenzen klicken, können Sie sehen, es ist Referenz dort und die gleiche in auf Zehe I uns Es wird darauf hingewiesen, dass, wenn Sie mit der rechten Maustaste auf Referenzen klicken, Sie können sie auch bearbeiten. Und wenn Sie möchten, können Sie Dinge entfernen oder Dinge hinzufügen, es liegt an Ihnen. Also vor ein paar Minuten, als ich sagte, dass Sie sowohl eine portable Klassenbibliothek als auch ein gemeinsames Projekt haben können, würden Sie hierher zu AP eins kommen, in dem Sie eins hier erstellen würden. Ich werde es nicht tun und dann lassen Sie mich das einfach schließen und dann in Ihrem Doc Droid und ich uns, würden Sie einen Verweis auf sie erstellen. Okay, Also, wenn wir uns Droid oder ich uns ansehen und wenn Sie nicht mit der APP-Welt vertraut sind, haben sie verschiedene Einstiegspunkte in die APP auf ap ein Punkt Droid. Wir haben die Haupttätigkeit, nicht CS. Und wenn ich hier reinschaue, habe ich diese Hauptaktivität wird in das eindringen, was diese Deklarationen später sind, und ich habe eine Methode, die auf create aufgerufen wird, und das ist die erste 1, die ausgelöst wird, wenn Sie Feuer einpacken. Aber hier haben wir einige spezifische Code für Xamarin-Formen, und das heißt, ich möchte die Anwendung neue App laden und es ist viel das gleiche, wenn wir über Zehe ich uns in ich uns hatten . Wenn wir auf Delegaten klicken, haben wir das gleiche hier. Abgeschlossen Start in dieser Methode ist, wo wir beginnen, den Hauptcode unserer App aufzurufen. Und wieder haben wir unsere Xamarin-Formulare Initialisierung beim Laden der Anwendung. Wenn ich im IOS-Projekt auf Hauptpunkt CS klicke, ist nichts drin, also ignorieren wir das vorerst. Tu so, als hätte ich das nicht getan. Okay, also App-Delegat und Hauptaktivität fragen beide, Formulare nach etwas zu untersuchen, und das ist etwas, das hier oben in App 1 etwas gespeichert wird, um zu schließen. Diese waren nicht verwirrt auf meinem Weg, um App einen Punkt CS zu doppelklicken. Und los geht's. Wir haben diese Klasse App, die hier und in dieser Klasse App referenziert wird, erstellen wir, was eine Hauptseite genannt wird. Dies ist die Wurzel unserer Anwendung, die allererste Seite, die aufgerufen wird. Und innerhalb dieser Seite haben wir eine neue Inhaltsseite und innerhalb dieser Inhaltsseite haben wir ein Stapel-Layout und sie stapeln Layout-Stapel Dinge übereinander, horizontal oder vertikal Sie entscheiden, welche. Es gibt Ihnen einige Optionen, um es zu positionieren. So vertikale Optionen haben Sie horizontale Optionen, damit ich so gleich Layoutoptionen dot haben kann und ich kann hier Mitte haben, oder ich kann es am Ende oder am Anfang haben. Es gibt hier kein Recht und Links, also denken Sie daran. Also werde ich das einfach in die horizontale Mitte schieben. Vergiss dein Komma nicht. Und dann in diesem Stapel-Layout haben wir eine Menge Kinder. Nun, diese Kinder sind die tatsächlichen Elemente von Ihrem Bildschirm. Also Ihre Schaltflächen, Ihre Beschriftungen, Ihre Textfelder, Ihre Eingabetextfelder, Listenansichten und Dinge wie die in der nächsten Vorlesung würden dies tatsächlich auf einigen Simulatoren für das iPhone und Android. Und in dieser Wahl, auch gehen, um die Installation von diesen Simulatoren decken 9. Xamarin iOS- und iOS einrichten und "Hello World" laufen: Also jetzt haben wir eine grundlegende Xamarin-Formular-App. Lassen Sie uns es in einem Simulator oder auf einem Gerät ausführen. Nun, wenn Sie Ihre IOS-App ausführen möchten, müssen Sie hier zum Associated Directory kommen, richtig? Klicken Sie darauf und stellen Sie sicher, dass ein Startup-Projekt ausgewählt ist und dann oben links, wir haben ein Spiel, ein Debug und ein iPhone. Sie können es entweder auf Debuggen oder Release setzen. Wir werden uns keine Sorgen über die Veröffentlichung für eine lange Zeit machen, und dann wird das nächste Menü uns eine Liste von Geräten geben. Wenn Sie keines dieser Geräte sehen können, müssen Sie X-Code auf Ihrem Mac öffnen. Und wenn das aufgeht, gehen Sie zu Fenstergeräten und hier drin haben Sie eine Liste Ihrer Simulatoren. Wenn Sie einen hinzufügen möchten, klicken Sie auf das Plus im unteren Simulator hinzufügen, und Sie können Ihren Simulator und Ihre IOS-Version auswählen oder weitere Simulatoren herunterladen. Aber ich habe meine schon. Etwas, um das zu schließen. Und wenn wir zu Samrin zurückkommen, sollten Sie dann eine Liste von Geräten haben, und wenn ich auf Play klicke, wird dies es auf meinem bereits offenen Simulator laufen und magisch, wir haben das Stück Text, der auf die Mitte ausgerichtet ist unseren Bildschirm. Jetzt spielt es keine Rolle, ob Sie das auf einem iPad oder iPad Pro laufen. Es wird immer an der Mitte ausgerichtet sein, also einfach drücken. Hör auf! Und da gehen wir hin. Es ist immer in der Mitte erlaubt, da der Inhalt, der Stapellayout in der Mitte des Containers und sein Container ist die Inhaltsseite, die der gesamte Bildschirm von Europa ist. Okay, lassen Sie uns das auf Android laufen. Um dies zu tun, klicken Sie auf App ein Doc-Droid, klicken Sie mit der rechten Maustaste und gehen Sie zu Ein Startprojekt festlegen, als dieses Projekt fett wird, was bedeutet, dass wir oben in ein Android-Debug-Menü geändert haben. Jetzt können wir hier unsere Android-Geräte verwalten. Aber bevor wir etwas davon tun, wollen wir an die Spitze der Hammering-Klick-Tools öffnen Android SDK-Manager kommen und hier müssen wir beginnen, verschiedene Happy und Android-Versionen zu installieren, weil wir offensichtlich keinen Emulator haben können , wenn wir haben kein Systemabbild für Android. Also habe ich bereits 501 installiert und ich sollte 403 eine allgemeine Faustregel als Entwickler installiert haben . Und ich sage dies zu Beginn des Jahres 2016 ist, dass Ihre minimale Zielstufe Android App E 15 sein sollte . Wenn Sie darunter gehen, dann können Sie Probleme mit der Kompatibilität haben. Und es wird wirklich Ihre APS-Chancen gefährden, auf zukünftigen Geräten gut laufen zu können. Die Art und Weise, wie Sie eine minimale Version festlegen, ist, dass Sie zu einem doc-Droid gehen, doppelklicken Sie darauf , gehen Sie zu Android-Anwendung, und hier haben wir eine minimale Android-Version auf Geist gesetzt bei 15. Und ich denke, Lachs tut das automatisch. Dann legen Sie ein Ziel fest, so dass es für dieses Ziel erstellt wird. Also muss ich sicherstellen, dass ich glücklich Level 23 zur Verfügung habe. Also, wenn ich scrollen 22 trinken scheinen nicht 23 haben. Also werde ich dies für 21 bauen, die Android fünf oder Lutscher war und klicken Sie auf OK, Diese Ziel-Android-Version bedeutet, dass es nur für das baut, aber es wird auf Android-Versionen höher als das laufen. Also machen Sie sich keine Sorgen darüber und klicken Sie auf OK, Kommen Sie zurück zu Ihrem SDK-Manager scrollen Sie nach unten und wir haben Teoh wählen Sie unsere Android Support-Bibliothek sind Android Support Repository Google Play Services. Wenn Sie Werbung und den Laden und solche Dinge verwenden, mal sehen, was wir hier noch haben. Wir können unsere Hacks haben. Ähm, Installer, Dies beschleunigt Ihre Emulator-Erfahrung. Also lassen Sie uns das auswählen und ich werde nur diese Pakete installieren. Lassen Sie mich. Es ist das, was aus glücklich 23. Wirklich bundesweit. Okay, immer noch fünf Pakete. Und wenn du das getan hast, komm zurück. Lassen Sie mich einfach darauf klicken. Kommen Sie zurück zu diesem Tutorial und werden bereit sein, unsere Simulatoren zu installieren. Jetzt gibt es ein paar Optionen für Ihren Android-Simulator. Die 1. 1 ist die Standardoption, die der normale Google-Simulator ist , der langsam wie heck ist. dies nicht herunter, weil es höllisch ist, mit Ihrer Option zu unseren verschiedenen Drittanbieter-Services zu arbeiten, die ziemlich gut funktionieren. Ihre dritte Option ist es, Tamarine eigenen Android-Spieler zu verwenden, weil sie identifizieren, dass Android war so träge sie haben, um ihre eigenen zu machen. So, zum Beispiel, und Android-Player, und schließlich, wenn mein Internet funktioniert, Ich denke, ich kann schneller Code als Maines Net kann Text endlich geladen herunterladen. Also gehen Sie vor und klicken Sie auf den Link, und es wird Sie zu xamarin dot com, Ford Slash Android Dash-Player und dann herunterladen, dass für Ihr OS X oder Windows oder was auch immer es ist. Und wenn das erledigt ist, kommen Sie zurück zu diesem Tutorial. Also lassen Sie uns die heruntergeladene Datei Hoffnungen installieren. Klicken Sie zweimal auf das. Klicken Sie auf, Weiter Don t. Dutch Duh und installieren Sie es. Es ist ein ziemlich kleines Programm, und sobald das getan ist, schließen Sie es und dann starten Sie den Android-Player und dann im Inneren von hier, sollten wir einige Stock Bilder von den Google-Geräten haben. Der Nexus ist, also werde ich nur einen Nexus erstellen. Mal sehen, lassen Sie uns eine Windel 19 Nexus vier Summen gehen, um das herunterzuladen und zu installieren. Und sobald das abgeschlossen ist, drücken Sie einfach ein neues Gerät und es sollte erstellt werden. Sobald es erstellt ist, gehen Sie zurück zu Samrin, beenden Sie es und starten Sie es neu, nur um sicher zu sein, dass es unsere Simulatoren aufnimmt. Also werde ich nur diesen Android-Spieler schließen, den wir gehen und ich werde Xamarin Studio wieder feuern . Und wenn ich das tue und mein Projekt öffnete, sollte ich Zugriff auf diesen Simulator haben, den ich gerade in unserem Debug-Menü erstellt habe. Lassen Sie uns unsere Nexus vier treffen und spielen, und es wird es bauen und dann starten Sie unser Gerät und laufen Sie es dort und dort haben wir es. Es läuft auf unserem Nexus auf nur für Kichern. Ich werde mich auf unser Ich aufmachen. Und dort haben wir Ihre allererste plattformübergreifende Xamarin-Forms Lösung auf einem iPhone und einem Android-Gerät geladen . Jetzt ist es erwähnenswert, dass Sie einfach ein Android-Gerät an Ihren Mac oder PC anschließen und direkt dort laufen können. Es waren keine speziellen Berechtigungen oder Zertifikate zum Herunterladen erforderlich. Im Gegensatz zu Apple. In der nachfolgenden Vorlesungwerden wir diesen Bildschirm ein wenig ändern, und was wir tun werden,ist, etwas Code zu trennen, um unserem MVV M Muster zu folgen. In der nachfolgenden Vorlesung werden wir diesen Bildschirm ein wenig ändern, und was wir tun werden, 10. Ändern unseres Layouts und der Elemente: Also haben wir unsere. Amarin bildet eine Lösung. Aber alles in unserer App. Ein Abschnitt ist alle Art von durcheinander, vor allem in dieser App ein Punkt CS. Wir haben einige Deklarationen einer Hauptseite der Inhaltsseite hier drin, und wir wollen damit beginnen, diese Dinge zu trennen. In einer vorherigen Vorlesung habe ich über Sammo gesprochen, und genau das werden wir hier machen. Also in AP eins, weil es das Schuppen-Projekt ist und alles wird es benutzen. Gehen Sie voran, klicken Sie mit der rechten Maustaste, klicken Sie auf Neue Datei hinzufügen und wir wollen die oberste Datei, das ist eher der obere Abschnitt, die Formulare, und wir wollen eine Inhaltsseite Zamel. Hier gibt es 22 Artikel für Inhalt, Seite und Inhalt. View on Zamel ermöglicht es uns, Markup-Sprache zu verwenden, während die andere nicht. Es ist rein Mantel. Sie können es in beide Richtungen tun. Es gibt kaum einen Unterschied, aber Sam wird, meiner Meinung nach, ist ein besserer Weg, dies zu tun. Und so werden wir diese Klasse Hauptseite nennen, und wenn Sie neu schlagen, es wird es zu ihren hinzufügen und sofort werden Sie bemerken, dass wir eine Hauptseite dot samel auf der Hauptseite dot samel dot CS haben . Also eins ist das Markup, und eins ist der eigentliche Code, um hinter diesem Markt zu sitzen. Es ist, wenn das Markup ist, wo wir tatsächlich unsere verschiedenen Elemente definieren werden. Also innerhalb unserer Inhaltsseite Punkt Content-Tags, werden wir tatsächlich in unserem Stack-Layout fallen, und dann werden wir diesem einige Optionen geben. Es ist die 1. 1 ist vertikale Platzierung, und wir werden dieses Zentrum geben und erweitern, und dann müssen wir es eine horizontale Platzierung geben, und wieder werde ich zentrieren und erweitern. Und was müssen wir dann noch tun? Wir müssen eine Orientierung haben, weil es ein Stapel ist, also ist es entweder vertikal oder horizontal, und wir werden dies als vertikal haben. Ich weiß nicht, warum das nicht Bestellung abgeschlossen ist und dann, weil es ein Stapel von Dingen ist, müssen wir eine Art von Abstand zwischen ihm haben. Nehmen wir also an, der Abstand ist gleich 15 und es gibt keine Einheiten auf, dass auf. Ich denke, das sollte es nur für das Stack-Layout tun. Es fügt automatisch das schließende Tag für uns ein, so drücken Sie einfach die Eingabetaste und das lässt es einige Leerzeichen hinunter und dann innerhalb von hier. Wir wollen damit beginnen, unsere Elemente zu platzieren. Also lasst uns haben, was sollen wir haben? Lassen Sie uns zwei Etiketten haben, damit wir das in Aktion sehen können. Es ist ein Label, und wir müssen ihm geben, dass ein Text gleich dem Etikett eins ist, so inspirierend, dass es nicht ist. Und lasst uns ein anderes Etikett hineinwerfen. Und wieder, Text ist gleich Beschriftung und Schließen von Tags. Und dann denke ich, dass es ziemlich viel abdeckt, um voran zu gehen und diese Zamel-Datei zu speichern und zu Ihrer Hauptseite Punkt Zamel dot CS Inside hier werden Sie feststellen, dass es nur eine Methode gibt, um Ihre Komponente zu initialisieren, aber hier würden Sie speichern Sie die meisten Ihrer Art von Zugriffsmethoden, um Daten aus anderen Klassen zu erhalten, so dass Sie es am meisten hier platzieren würden. Und das sitzt wieder in das MVV n Paradigma ist, dass der größte Teil unseres Codes hier gespeichert ist, so dass wir es nicht über Droid I Us und Windows Phone neu schreiben müssen. Wir werden nichts damit in diesem Abschnitt zu tun, aber in den nachfolgenden Abschnitten wurden es ziemlich viel zu verwenden, also haben wir ein Layout erstellt. Wir haben einen Code dahinter. Jetzt müssen wir dieses Layout in unsere eigentliche App bringen. Also diese App ein Punkt CS ist, wo wir haben, um diese Inhaltsseite zu finden und sie zu initiieren. Also was, Wir werden es tun, einfach entfernen alle diese Standard-Zeug, die Zaman für uns bis zur Hauptseite gesetzt hat . Und wir sagen, Hauptseite ist gleich einer neuen und app one dot Hauptseite gebaut, um das zu speichern. Und jetzt sollte das mit unserer neuen Hauptseite laufen. Also gehen Sie voran und drücken Sie das Spiel. Normalerweise, wenn ich Zaman Formulare APS erstelle, neige ich dazu, offensichtlich für beide Plattformen zu entwickeln . Aber ich teste mehr auf ich uns, weil es viel schneller ist, den i r Simulator auf einem Mac sowieso zu verwenden . Also gehen wir hin. Wir haben zwei Labels und ich werde nur aufhören, dass laufen und mein Auge uns als Startup-Projekt auswählen . Es wäre schön, wenn Zaman Sie beide starten lassen würde. Vielleicht in einer Zukunft ist es oration, und ich werde das feuern und überprüfen, ob es läuft. Und da gehen wir sind das erste, was Sie bemerken werden, ist, dass iPhone einen weißen Hintergrund hat und Android einen schwarzen Hintergrund hat. Jetzt sind diese Standardeinstellung, was in den jeweiligen Betriebssystemen systemweit eingestellt ist . Seien Sie also sehr vorsichtig, wenn Sie Ihre Textfarben angeben. Wählen Sie immer Ihre Hintergrundfarbe aus. Zwei. Nehmen Sie nicht an, dass Sie immer einen hellen Hintergrund oder einen dunklen Hintergrund haben. Auch die Regel, wie bei der gesamten Softwareentwicklung, wirklich darin, erneut zu testen, zu testen und zu testen und sie dann jemandem zu geben, der keine Software verwenden kann und sie dazu bringen, es zu testen, weil sie finden Sie die Bugs für Sie. Okay, das deckt so ziemlich ab, wie man den gesamten Code in dieses MVV M-Paradigma trennt und in nachfolgenden Vorträgen ein wenig tiefer damit werden und Dinge wie Listenansichten und Abstraktion von Datenbank betrachten Klassen und diese Art von Sache 11. Einführung in das gerade erledigen X 1: Dies ist nur ein wirklich kurzes Einführungsvideo auf der zweiten App, die wir machen werden, um APP zu und innerhalb dieses Mini-Abschnitt nennen, wir werden tatsächlich wiederholen, was wir im letzten Abschnitt getan haben. Aber wir werden darauf aufbauen. Wir werden einige zusätzliche Sachen machen, werden wahrscheinlich wegen der plattformübergreifenden Natur der Dinge auf ein oder zwei Probleme stoßen und diese lösen, wenn wir gehen. Aber bevor wir mit dem Programmieren in der nächsten Vorlesung beginnen, werde ich Sie tatsächlich in das APP-Design und die Marketing-Seite davon bringen. Und glauben Sie es oder nicht, es beginnt tatsächlich so früh, und ich werde erklären, warum in der nächsten Vorlesung. 12. Verschaffen unserer app: Schauen wir uns die App an, die wir machen werden. Was wir machen werden, ist eine einzelne zu tun Liste oder nicht, es sei denn, es sei denn, es ist ein einzelnes zu tun Element. Also werden wir eine App machen, mit der Sie nur ein Element in die App einfügen können, und das ist das einzige, was Sie an diesem Tag tun müssen. Jetzt ist dies für Leute gedacht, die es hassen, Listen zu tun, und es gibt einige ziemlich wenige da draußen. Ich fing an, Listen zu hassen, aber wenn ich nur eine Sache aufschrieb, fand ich heraus, dass ich es jeden Tag tat. Und jetzt habe ich auf größere Liste APS abgeschlossen und ich kann 10 Aufgaben pro Tag erledigen. Aber im Moment werden wir nur eine einzige Sache zu tun machen. App. Was wir darüber nachdenken müssen, bevor wir beginnen, ist das Marketing aus diesem jetzt, wie Sie sich vorstellen können, auf Android und Apple, gibt es eine 1.000.000.000 zu tun Liste APS oder Single zu tun APS oder was auch immer es ist, Also wird bemerkt wird extrem hart sein, und wir wollen bemerkt werden, weil wir Werbung auf unserer App vielleicht setzen, und wir wollen von, dass auf dem Weg bezahlt werden, um in der APP-Welt bemerkt zu werden, ist eigentlich zu Huckepack auf einem gemeinen oder etwas populäres Und was ich bin Wird dich wieder abholen, ist diese Shyla Geburt? Mach es einfach Video. Und es ist fantastisch für Ihren Genuss. Ich werde nur die vollen Minuten von diesem Video für Sie einfügen. Jetzt tun Sie es. Tun Sie es einfach. Lassen Sie Ihre Träume nicht Träume sein. Gestern sagtest du morgen, also mach es einfach. Lassen Sie Ihre Träume wahr werden. Tun Sie es einfach. Manche Leute träumen Erfolg, während du aufwachst und hart daran arbeitest. Nichts ist unmöglich. Du solltest an den Punkt kommen, an dem jemand anderes aufhören würde. Und du wirst dort nicht aufhören. Nein. Worauf wartest du? Tun Sie es. Tun Sie es einfach. Ja, du kannst es einfach tun. Wenn du es satt hast, von vorne anzufangen, hör auf aufzugeben. Ich weiß nicht, wie es dir geht, aber ich bin jetzt gefeuert, also werden wir das YouTube-Video umwickeln. Also lasst uns eine neue Lösung treffen. Xamarin Formulare App und wir wollen eine portable Klassenbibliothek und wir müssen ihm einen Namen geben. Und ich werde das nennen? Tun Sie es einfach x eins und meine Firma identifiziert Geek A micro, so dass sollte einzigartig in den APP-Stores sein. Aber es lohnt sich zu überprüfen, ob Sie sich nicht sicher sind. Also werde ich als nächstes den Projektnamen treffen. Wir werden es bei Nur tun Sie es X eins. Gleiches mit der Lösung und wir werden einfach erstellen und Samrin wird den Rest für uns tun. Und jetzt sollten Sie wissen, was diese verschiedenen Ordner und Referenzpakete usw. in der nächsten Vorlesung sind. Wir werden auf die Erstellung der grafischen Seite von unserer App schauen. 13. Erstellung der grafischen XAML Elemente unserer App: Lassen Sie uns die grafischen Elemente unserer aus in unserem PCO-Ordner erstellen, klicken Sie mit der rechten Maustaste auf Neue Datei hinzufügen und wir wollen Formulare Inhalt Seite Zamel und ich werde nur diese Hauptseite aufrufen und schlagen neu. Und Sie sollten jetzt mit dem Zamel auf dem Code hinter Prüfung vertraut sein Oh, so in unserer Inhaltsseite Punkt Inhalt werden wir zu den tatsächlichen grafischen Teilen unserer App erstellen . Das erste, was wir tun werden, ist eigentlich vor Inhaltsseiten-Punkt-Inhalts-Tags. Wir werden etwas Polsterung einfügen, weil wir nicht wirklich wollen, dass unsere App den ganzen Weg bis zu den Rändern des Bildschirms geht , außer in speziellen Design-Fällen und die Art und Weise, wie wir unser Padding machen, besteht darin Inhaltsseite Punktauffüllung einzugeben und das zusätzliche Tag dort einzufügen und dann im Inneren von hier. Wir werden dies tatsächlich auf einer pro Plattform Basis spezifizieren. Also kommen wir jetzt zu dem Punkt, wo wir innerhalb der Zamel, die über alle Plattformen geteilt wird. Wir können das Padding tatsächlich anders definieren, je nachdem, auf welcher Plattform wir laufen . Und so brauchen wir ein X. Wir brauchen einen Typ Argumente und wir müssen diese Hopfen geben, eine Dicke wie so und dann müssen wir es pro Plattform definieren. Also werden wir es sagen. Für ich uns, Ich möchte, dass Sie poundings von 2040 20 auf 20 und dann für Android haben. Lasst uns noch 20 ringsum haben. Der Grund, warum es anders als die IOS 40 Wert ist, weil auf ich uns haben wir eine obere Leiste die oben auf unserem Bildschirm sitzt, und dann werden wir in Wind Telefon setzen. Wir werden nicht für Wind-Telefon kompilieren, aber ich werde es nur zur Vollständigkeit dort hineinlegen. Also, das sind wieder 20 ringsum. Und dann können wir das Etikett abschließen, das uns anständiges Klopfen gibt. Okay, jetzt, da wir das getan haben, müssen wir ein Stack-Layout innerhalb des Inhaltsbereichs erstellen. Also geben Sie einfach Stack-Layout ein und dann brauchen wir einige vertikale Optionen. Wo werden wir es hinlegen? Lassen Sie uns zuerst Phil versuchen und erweitern, und wir brauchen das gleiche für horizontale Optionen. Und wieder, Phil und erweitern. Ich könnte tatsächlich ein bisschen in die Mitte wechseln, und wir brauchen eine Ausrichtung für das Stapellayout, und das ist vertikal, und dann können wir einen Abstand zwischen unseren Elementen haben. Also lasst uns sagen, dass ich 20 nicht weiß. Siehst du, was das mit sich bringt? Schließen Sie das ab, setzen Sie die nächsten Tage und dann werde ich nur Dinge erfinden, um es lesbarer zu machen. So etwas wie das. Dann innerhalb dieses Stapellayouts waren tatsächlich dabei, alle unsere Elemente zu platzieren. Da das so einfach ist, werden wir nur ein Etikett, ein Texteingabefeld und eine Schaltfläche haben . Das ist es für diese App. Also lasst uns das Etikett machen und der Text von unserem Etikett ist gleich Mal sehen, ich werde es nennen. Tun Sie es einfach. Hey, wir gehen und schließen das ab. Dann brauchen wir ein Eingabefeld auf. Dies wird einfach Eintrag genannt. Das ist also ein Textbearbeitungsfeld oder ich vergesse, was es auf allen Plattformen genannt wird, aber im Grunde das Feld, in dem Sie klicken und Text eingeben können. Wir müssen diesem Feld einen Namen geben, damit wir es später referenzieren können, und wir werden es als Aufgabentext nennen. Und wenn wir möchten, können wir ihm einen Standardtext geben. Aber das werden wir nicht tun. Was wir tun werden, ist, einen Platzhalter reinzubringen. Wenn das leer ist, zeigt es uns eine Art grauer oder heller weißer Hintergrundtext, der uns sagt, was wir hier einfügen sollten. Also an unserer Stelle, Holder war direkt im Schlepptau. Aufgabe, den Arzt. Und dann schließen wir das ab. Und schließlich brauchen wir einen Knopf. Und das natürlich braucht natürlicheinen Namen. Und wir werden diesen Speichern-Button nennen. Vergiss mein schlechtes Tippen, und das braucht einen Text, der auf der Schaltfläche angezeigt werden soll. Wir nennen es einfach „Save“. Und dann gibt es verschiedene andere Dinge, die wir hier tun können, also werde ich sie einfach aus Vollständigkeit tun. Sie wissen also, Sie haben nicht aktiviert, so dass Sie diese Schaltfläche ausgrauen können, wenn Sie möchten. Und ich werde nur haben, ist aktiviert. Auf „true“ gesetzt. Wenn Sie also eine Schaltfläche ausgrauen möchten, weil jemand einen Text eingegeben hatte, würde er ihn auf false setzen, bis sie den Text tatsächlich eingegeben haben. Und schließlich haben wir ein geklicktes Ereignis, und dies wird eine Ihrer Methoden im Code dahinter auslösen. Und wir werden dies auf Speichern klicken, und wir haben das noch nicht erstellt, aber das spielt keine Rolle und dann schließen Sie Ihre Tags ab. Also überprüfen Sie einfach immer Ihre Tags Lineup. Wir haben unseren Stapel. Wir haben unsere Inhaltsseite, wir haben die Polsterung, usw cetera. OK, sagen wir das, und ich werde es einfach ausführen und überprüfen, dass die Grafiken alle gut ausgerichtet sind und hoffen, dass das ein Fehler zu sein scheint. Also komm ich zurück zu Sam und hör damit auf. Und ich weiß, was es in zu viel von einem Ansturm der vergessen ist, tatsächlich die Hauptseite der App auf die, die wir gerade erstellt haben, zu setzen . Also lassen Sie uns den Standardwert entfernen. Tun Sie es einfach x ein Punkt CS und wir werden nur eine neue Nur tun Sie es X ein Punkt Hauptseite und lassen Sie uns versuchen, dass wieder so sein wird. Ok, willkommen in unserer ersten Ära. Es sagt, dass es keine Methode für sichere geklickt gibt, so dass, obwohl wir nicht wirklich versucht haben, es zu nennen, es ist immer noch durch Brandstiftung Ära. Also werde ich das stoppen, und ich werde nur eine leere Methode in unseren Code hinter der Datei einfügen. Also in unserer Klasse hier, gehen wir weiter und feuern unsere Spüle an, bevor Wade. Was wir es auf Speichern nennen, geklickt, glaube ich. Und dann brauchen wir ein Objekt. Senden Sie eine und Ereignishunde e und erstellen Sie dann Methode. Und natürlich brauchen wir hier drin nichts zu tun. Wenn wir möchten, können wir etwas in die Konsole schreiben, aber wir werden es vorerst nicht tun. Also lassen Sie uns das laufen und überprüfen, ob das erledigt ist. Der Trick für uns. Und da haben wir es. Wir haben unser Label. Wir haben unser Aufgaben-Eingabefeld, und wir haben einen Speicher-Button. Es tut momentan nichts. Okay, ich werde das nur auf dem Android-Player laufen und tatsächlich sehen, wie es aussieht. Also werde ich es dort stoppen, meinen Droiden treffen, und lass uns ein Start-Up-Projekt erstellen und es einfach auf das ausführen, das wir gerade laufen, was das ist und da haben wir es. Okay, ich denke, ich möchte das alles in den Mittelpunkt stellen, aber das liegt an dir. Du musst das nicht wirklich tun. Also, in meinem Beispiel, werde ich nur dieses Stapellayout ändern, um zu zentrieren und zu erweitern. Dann werde ich nur sehen, wie das aussieht, ich mache es zuerst auf dem iPhone , denn das ist immer viel, viel schneller, um tatsächlich zu kompilieren. Okay, da haben wir es in der Mitte. Nun, es sieht im Moment nicht toll aus, aber ich überlasse es Ihnen, auf die Zaman Website zu springen und die Zamel-Spezifikationen nachzuschlagen und zu sehen, wie Sie die Farben, die Hintergründe, die Breite der Dinge, etcetera, usw Okay, in der nächsten Lektion werden wir Code in dieses Projekt werfen, damit unsere Aufgabe gespeichert wird, wenn wir auf die Schaltfläche „ Speichern“ klicken . 14. Den wichtigsten app schreiben - Benutzereinstellungen zum Speichern von Daten: Bevor wir also anfangen, tatsächlich zu codieren, müssen wir über etwas ganz Wichtiges nachdenken. Und das heißt, wo auf der Erde stellen oder speichern wir unsere einzige Aufgabe? Also dieses Ding, das wir hier eingeben, können wir es offensichtlich nicht nur im einfachen Speicher speichern, denn jedes Mal, wenn wir die APP neu starten, wird sie verschwinden. Also haben wir ein paar Möglichkeiten. Entweder können wir irgendwo in die Cloud hochladen, oder wir können sie in einer Datenbank speichern. Aber das scheint für ein einfaches bisschen Text übertrieben zu sein. Wir könnten es in unserer portablen Klassenbibliothek speichern, aber das ist ziemlich kompliziert. werden wir nicht tun. Was wir tun werden, ist, die Einstellungen auf allen Systemen zu nutzen, die wir haben. Also ich Brandstiftung, Android und Windows Phone, und in der Regel würden Sie diese verwenden, um Präferenzen zu speichern, aber Sie können eine Textzeichenfolge darin speichern, im ersten Schritt, um dies zu tun, ist es auf Ihre Pakete in jedem Projekt und geben Sie Zamarripa in den Einstellungen ein. Und einer der Jungs, die untersuchen funktioniert, hat diese Einstellungen Plug in erstellt, mit dem Sie auf die Einstellungen zwischen Anwendungen zugreifen können , um einfach das Paket dort hinzuzufügen, hinzugefügt in Ihrem Droid-Projekt. Ich wünschte wirklich, dass dies es allen zur gleichen Zeit hinzugefügt hat. Und natürlich wollten wir innerhalb des IOS-Projekts. Okay, sobald wir gegangen sind, waren alle bereit, Code zu erstellen. Öffnen Sie Ihre Hauptseite Punkt Zamel Punkt CS Und innen sind unsicher geklickt Funktion. Wir wollen den Text packen. Also lassen Sie uns einfach sagen, über Text ist gleich dem Aufgabentext. Und wenn Sie sich erinnern, das ist der Name, den wir ihm hier im vergangenen Text gegeben haben und dann wollen wir die Texteigenschaft daraus ziehen , dann wollen wir überprüfen. Da ist eigentlich ein Text drin. Also gehen Sie voran und tippen Sie. Wenn nicht String-Punkt kein oder Leerzeichen ist, dann werden wir es tatsächlich speichern. Und natürlich, natürlich, wenn es ein anderes Leerzeichen leer ist, möchten Sie vielleicht ein anderes und dann hier drin eine Art Nachricht haben, um es über das leere Feld zu verwenden. Das ist nur ein gutes User Experience Design. Also, wenn wir unseren Text haben und es ist alles gut drinnen hier, wir wollen tatsächlich Text zu den Benutzereinstellungen speichern, und wir werden diese Einstellungen Plug in verwenden, dass wir gerade habe ich gerade erkannt, dass ich hier einen kleinen Fehler gemacht habe und in diesem ist -Zeichenfolge ist kein Leerraum. Wir müssen es tatsächlich unsere Stärke ernähren. Also lasst uns einfach Text eingeben. Los geht's. Und das sollte funktionieren. Ich werde nur sicherstellen, dass das aufbaut und es tut. Uns geht's gut. Also sind wir bereit, den Text zu speichern. Was ich da drin denke, sein Name ist James Monta. Magno hat mit diesem Paket fertig ist, dass er hier eine Hilfsklasse erstellt hat. Wenn Sie also in Helfer und Einstellungen in Ihrem freigegebenen Projekt gehen, werden Sie feststellen, dass er diese statische Klasse erstellt hat, und hier können Sie eine Standardart von String festlegen und abrufen. Und Sie müssen dies ändern, wenn Sie verschiedene Arten von Strings usw. haben . Aber was wir hier tun werden, ist ändern Sie diesen Einstellungsschlüssel. Also werden wir dies nur als Aufgabe haben und dann wird der Standard nur eine leere Zeichenfolge sein, so dass wir keine bösen Initialisierungsfehler bekommen, und dann werden wir in unserem Code tatsächlich diese allgemeine Einstellungsmethode verwenden, die ermöglicht es uns, unsere Einstellungen zu bekommen und so werde ich einfach lassen, dass oben für eine Sekunde für den Fall, dass Ihre etwas anders aussieht , weil diese Plug Ins gelegentlich aktualisieren und Sie können ein gutes Ich fühle für das, was das eigentlich ist. Okay, ich werde nur schließen, dass in unserer Hauptseite dot samel dot CS Inside hier, wir müssen den Text speichern. Und weil wir diesen wirklich praktischen Plug in und die Hilfe der Klasse haben, ist das nur eine einfache Zeile und das ist oh, Namensraum. Und dann Punkt-Helfer Punkt-Einstellungen Punkt allgemeine Einstellungen ist gleich dem Text. Das ist alles, was du brauchst, um es zu retten. Und dann, natürlich, wenn unsere App startet, müssen wir tatsächlich den Text innerhalb der Box ändern. Also habe ich es nicht geöffnet, sondern den Text innerhalb des Eingabefeldes. Und natürlich möchten wir diesen Text packen und ihn in die Box stecken. Und es gibt ein paar Möglichkeiten, dies zu tun. Wir können entweder eine Art von einer Reihe von Klassen und Methoden haben, die unseren Ihnen sagen, warum sich der Wert geändert hat und es oft Ereignis ausgelöst, das es tatsächlich innerhalb des Eingabefeldes ändert. Aber das wäre etwas oft übertrieben für diese Art von Projekt. Also alles, was wir tun müssen, ist auf diese Hauptseitenklasse zu kommen und hier müssen wir unsere Aufgabe schreiben . Text Punkttext ist gleich ich würde nur tun es Punkt-Hilfe ist Punkt-Einstellungen Punkt allgemeine Einstellungen , die über die Einstellungsdatei gehen und greifen Sie den Text für uns. Also lassen Sie uns das auf unserem iPhone laufen. Und dank dieser schönen Stecker in diese beiden Linien sollten eigentlich kümmern sich um alle Bits und Stücke, die wir brauchen. Also haben wir hier keine SMS. Ich werde machen Website und Hit setzen. Sparen. Es wäre schön, wenn wir eine Art Benachrichtigung auf Save hätten, die tatsächlich gesagt hat, dass es gespeichert wurde . Aber das überlasse ich Ihnen, um irgendwie umzusetzen. Was dann? Ich werde seine Kommandoschicht zweimal nach Hause schlagen. Das ist die Abkürzung für den APP-Umschalter. Es ist Löschen Sie das, und dann werde ich es wieder öffnen, und es sollte diese Präferenz herausziehen. Und da haben wir unsere Make-Website, so dass Sie in ein paar Minuten tatsächlich die Basisschicht Gesamtrampe codiert haben. Mit diesem praktischen, praktischen Plug in. Lassen Sie uns ein wenig Nettes hinzufügen. Und das sind ein paar Nachrichten, die einen Benutzer wissen lassen, dass er auf Dinge geklickt hat oder nicht genug Text beendet hat . Das ist also die Schaffung einer neuen Methode. Und nennen wir nichtig eine Show Alert. Und dann hier drinnen gehen wir über die Zeichenfolge, die Tyto String Message sein wird. Andi, ich denke, wir lassen es dabei und schließen es ab. Okay, und dann hier oben in unseren, wenn sonst Aussagen würden nur die Show Alarm auslösen. Und wenn wir es gerettet haben, wollen wir eigentlich sagen, dass ich davon Gebrauch machen werde. Vielleicht sagen wir Erfolg, da der Titel und die Aufgabe den Doktor Doktor gerettet haben. Jetzt mach es und schließe das ab. Und dann, wenn wir keinen Text in der Box haben, wollen wir wieder sagen, unsere Benutzer Show alert, die klassische Ära Box. Keine Aufgabe, die gespeichert werden muss. Sie nicht und schließen Sie das ab. Und dann hier unten in unserer Show Alert, brauchen wir tatsächlich die Methode, um unsere Warnung anzuzeigen, die einfach Alarm zeigt. Und er bittet um einen Titel, den wir ihm eine Nachricht geben werden, und dann braucht er ein bisschen Text für den Council Button. Also ist das normalerweise in Ordnung, oder? Lassen Sie uns treffen, speichern und gehen Sie voran und führen Sie das aus und das fügt uns einfach ein schönes bisschen Benutzererfahrung hinzu. Also die Verwendung sie weiß, was tatsächlich damit passiert. Das ist, wenn ich zugeschlagen habe. Speichern Sie die Aufgabe gespeichert. Jetzt tun Sie es. Wenn ich keinen Text in der Box und drücken Sie speichern Era, keine geworfen, um zu speichern. Okay, das schließt die Konstruktion aus diesem Teil der App. In der nächsten Vorlesung betrachten wir das Einfügen einer kleinen Google-Anzeige am unteren Rand dieses Bildschirms, damit wir von ihm bezahlt werden können . 15. So fügen Sie Google Admob Ads in eine Xamarin App hinzu: Lassen Sie uns einige Anzeigen in unsere App. Gehen Sie zu unserem Droid-Projekt DoubleClick-Komponenten, und es braucht uns, um Komponentenspeicher Treffer zu untersuchen. Holen Sie mehr Komponenten auf, wenn es geladen wird. Schließlich geben Sie Google Play. Ordnung. Lassen Sie uns einige Google Ads Insider Wraps setzen, weil wir bezahlt werden wollen. Und ich habe das Endergebnis für Rap genau hier hochgezogen, damit Sie sehen können, wie diese Anzeigen aussehen werden . Gehen wir also zu Xamarin Studio und implementieren das für uns selbst. Das erste, was wir installieren müssen, ist die relevanten Dateien oder s Zerfälle, um tatsächlich diese Anzeigen zu implementieren , und sie sind anders für Droid und ich uns. Also zuerst, kommen Sie zu Iose Project. Doppelklicken Sie auf Komponenten und drücken Sie. Holen Sie sich mehr Komponenten. Ich habe anscheinend keine Internetverbindung. Nett, versuchen Sie das. Dort gehen wir und dann werden wir für Google Mobile Anzeigen suchen und es sollte sich um sie nach unten fühlen . Gemäß dem Projekt, das Sie gerade ausgewählt haben, und das oberste ist das, das wir wollen und klicken Sie auf Add to app und es wird alle Referenzen für Sie hinzufügen und wir diese Anweisungen ignorieren, weil sie für uns nicht relevant sind, wie wir verwenden -Formulare. Das nächste, was wir hinzufügen müssen, ist etwas zu unserem Droidenprojekt. Wenn Sie zum Komponentenspeicher gehen, ja, ja, es gibt Komponenten, um Anzeigen zu machen. Aber wenn du mich fragst, sind sie extrem buggy. Also ist es viel besser zu gehen. Direktorin Quelle. Und ich denke, jemand hat einige schöne Bindungen auf neue get so DoubleClick-Pakete gesetzt. Und hier drinnen werden wir nach Google Mobile Ads oder Google Play-Anzeigen suchen. Ich glaube, es heißt. Eigentlich gehen wir hin. Google Play-Dienste Dash-Anzeigen und klicken Sie dann auf Paket hinzufügen. Andi, wenn Sie Ihren Paketordner öffnen, sollte es eine Reihe anderer Dinge wie Keller und App-Indizierung usw. hinzugefügt haben sollte es eine Reihe anderer Dinge wie Keller und App-Indizierung usw. hinzugefügt haben. Okay, jetzt haben wir die Komponenten. Wie genau nennen wir diese Anzeigen auf ihren jeweiligen Systemen? Nun, wir müssen zurück zu unserem Shared PCL Projekt Öffnen Sie die Hauptseite Punkt Zamel und dann innen hier in der Inhaltsseiten-Deklaration, müssen wir einen weiteren XML-Namensraum hinzufügen. So geben wir XML s Steuerelemente ist gleich C. L R. Dash Name Leerzeichen Doppelpunkt. Und dann müssen wir den Namen Raum unseres Projekts setzen, das ist nur tun Sie es x ein Semikolon . Und dann ist der Name der Assembly gleich, es einfach x eins zu tun und die Anführungszeichen zu schließen. Okay, jetzt, da wir das haben, können wir tatsächlich die Kontrolle übernehmen, die es uns erlaubt, die Anzeige John hier runter zu meinem Stapel-Layout zu bekommen . Und unter dem Knopf ist, wo ich dieses etwas sagen werde. Steuert Semikolon, fügen Mob Ansicht in Kamel Fall, und dann müssen wir ihm eine Breite geben. Anfrage auf diese für eine Add-Mob Anzeige ist 320 und dann müssen wir es eine Höhe Anfrage geben. Und bei Mobil ist das 50 für Ad Mob. Es kann 90 sein, wenn du auf einem Tablet bist, aber das werden wir jetzt nicht angehen. Und dann schließen Sie das Etikett, richtig? Das ist alles, was wir auf unserer Hauptseite brauchen, Dr. Zamel. Nehmen wir also an, dass wir innerhalb unserer Hauptseite dot Zamel dot CS nur eine Klassendeklaration haben müssen, damit Sie dies in einer separaten Datei tun können. Aber ich tue nur hier drin, um das alles kompakt und zusammen zu halten, also nehmen wir die öffentliche Klasse, fügen Mob View hinzu, und das entspricht dieser Admiral Ansicht zu hören. Also Admiral View und das wird inhärent vom Inhalt von Ihnen erben unsere geschweiften Klammern und lassen Sie uns einen Konstruktor einfügen. Es wird eigentlich nichts tun und es abschließen. Also gehen wir hin. Das ist alles geschlossen. Also, jetzt haben wir das. Die Idee, was wir hier tun, Prüfung oder Information ist, dass wir ein benutzerdefiniertes Rendering erstellen. Also der Zamel Abschnitt oder der PCL Abschnitt, wird zu Droid gehen und zwei ich uns einzeln und sagen, Hey, ich muss diese Komponente von dir bekommen. Kannst du es zur Verfügung stellen? Und dann gehen die einzelnen Projekte Android und ich uns voran und stellen es zur Verfügung. Nzama informiert also, dass das tatsächlich eine Möglichkeit ist, die Tatsache zu umgehen, dass einige Steuerelemente nur auf einer Plattform basieren. Sie können benutzerdefinierte Renderer verwenden, um anzugeben, welches Steuerelement bereitgestellt werden soll. Okay, also lassen Sie es tun, denn ich frage zuerst, ob wir mit der rechten Maustaste auf mich klicken und gehen, um neue Datei hinzuzufügen. Wir wollen eine leere Klasse und wir nennen das etwas Offensichtliches. Wie fügen Sie mob, rendern Sie ein und da ist es. Lassen Sie uns hier oben einige Verwendungsanweisungen einfügen, weil es eine Menge Dinge gibt, die tatsächlich durchlaufen werden müssen . Also wollen wir Punktformen untersuchen und dann er samarie in Punktformen Dot Platform dot i uns und dann müssen wir das gemeinsame Projekt haben. Also, wie ist unser Name? Weltraum? Ich habe es einfach vergessen. Los geht's. Tun Sie es einfach x eins und verwenden Sie dann nicht dieses. Wir müssen unsere Google Dot mobile Anzeigen referenzieren und dann, weil dies ich uns ist, müssen wir eine Verwendung für das u I Kit haben, das kümmert sich um unsere Ansichten. Okay, Jetzt brauchen wir einen Verweis zurück auf die portable Klassenbibliothek. Also werden wir Assembly-Export-Renderer eingeben, und dies wird einen Typ haben add mob-Ansicht auf dem zweiten Argument ist das Ziel, das ein Typ bei Mob-Renderern ist und unsere eckigen Klammern abschließt. Okay, mach dir keine Sorgen um dieses rote Bit für jetzt, denn wenn du mit der rechten Maustaste klickst und zum Auflösen gehst, kannst du den benutzenden Namensraum dafür hinzufügen. Ok? Jetzt müssen wir den eigentlichen Code erstellen, der voran geht und unsere bewundernswert bekommt. Also muss diese App mehr Brenda von einer speziellen Xamarin-Forms-Komponente erben, die die Ansicht rendern und dann innerhalb der Klasse ist, brauchen wir eine konstante Zeichenfolge und das wird der Anzeigenmob I D sein. Und ich werde das nicht abdecken in dieser Vorlesung. Wenn Sie einen Nabob bekommen wollen, gehe ich einfach zu Google Ad-Mob auf der Hand, halte Sie durch den gesamten Prozess und sie werden Sie durch ihn führen. Und am Ende kommen Sie mit einem I. D.raus D. Lassen Sie mich einfach meinen finden und kopieren Sie ihn hier und hier ist es. Dann brauchen wir eine so genannte Banner-Ansicht und wir werden diese Anzeigenansicht nennen, die sich verhalten wird , die tatsächlich halten wird. Ich werde Google-Anzeige. Und dann brauchen wir einen Boolean, um die Ansicht auf dem Bildschirm zu verfolgen, um zu sehen, ob unsere Anzeige auf den Bildschirm geladen wurde oder nicht. Dann müssen wir etwas überschreiben, also gehen wir geschützte Überschreibung, und die, die wir überschreiben möchten, ist auf Element geändert. Es ist der Eine. Also lassen wir unsere Basis dort drin, so dass läuft und dann darunter müssen wir überprüfen, ob e dot neues Element nein ist. Also, wenn es noch nicht existiert, dann kehre zurück und dann brauchen wir Und wenn e dot oled Element nein ist, dann werden wir unsere Band von dir erschaffen. Also lasst uns rein, Stan, sie hat es gegessen. Wir sagen, hinzufügen Ansicht ist gleich einem neuen und wir wollen ein Verbot von Ihnen und dann Verbot von Ihnen wollen einige Argumente? Also wollen wir zuerst eine Größe. Das ist ziemlich einfach zu tun. Wir gehen einfach Größe hinzufügen Cons nicht und wir werden ein intelligentes Banner im Portrait haben und dann schließen Sie das ab und dann braucht dies einige Argumente. Also die 1. 1, die es braucht, ist die Anzeigeneinheit I D. , die wir hier mit unserem Add mehr von i d verkleinert haben. Dann braucht es einen Root-View-Controller. Dies ist also der View-Controller, der den Stapel von Ansichten steuert, die Sie als IOS-Benutzer sehen und der von Ihnen stammt. Ich Anwendung Punkt gemeinsame Anwendung. Wir wollen die Fenster mit einem Index von nicht auswählen und dann wollen wir den Routenansicht-Controller davon abnehmen und sie wollten das einfach abschließen und das gibt uns unsere Anzeigenansicht. Dann brauchen wir eine Veranstaltung. Also werden wir sagen, wenn die Anzeigenansicht empfangen wird, fügen Sie empfangene plus gleich hinzu, und wir bekommen nur einige Center und Hunde da drin. Also, sobald Sie es erhalten haben, wenn die Ansicht auf dem Bildschirm falsch ist, also lassen Sie uns ein Ausrufezeichen davor setzen, dann möchte ich, dass Sie diese Unteransicht hinzufügen. Lassen Sie mich sagen, dass dieser Punkt eine Ansicht hinzufügt und dann sagen wir Nehmen Sie unsere Anzeige und legen Sie sie dort rein, okay? Und dann, weil wir eine Anzeige erhalten haben, möchten wir unsere Ansicht auf dem Bildschirm als wahr festlegen. Es ist also schon gelaufen. Und dann, wenn wir das getan haben, tatsächlich abfeuern wir die Anzeigenanfrage. Also tun wir das, indem wir sagen, Anfrage Anfrage ist gleich Punkt und dann möchten Sie die Standardanforderung so erhalten , und dann müssen wir sie tatsächlich laden. Fügen Sie also View Dot Load-Anfrage hinzu und übergeben Sie es unsere tatsächliche Anfrage, die wir gerade erstellt haben. Und dann müssen wir ihm eine weitere Basismethode Dot Set native Kontrolle geben. Diese Aussicht, richtig? Das ist ziemlich viel zu tippen, aber das sollte mich so ziemlich decken. Also werde ich spielen, und ich werde überprüfen, ob das tatsächlich in unserem Simulator funktioniert. Da gehen wir. Wir haben ein kleines Problem, also werde ich nur diesen Absender ändern. Hunde. Da gehen wir. Das stimmt jetzt damit überein, also sollte das kompilieren. Wenn wir hier drüben hätten, wird es es aus unserer Sicht entfernen. Laden Sie die neue hoch. Und wenn wir Glück haben, was wir im Moment nicht da sind wir gehen. Es ist schon aufgetaucht. Das ist großartig. Lass uns weitermachen und viel dasselbe für die Android-Version tun. Also gehen Sie zu dem Android-Projekt, setzen Sie es als Start up und dann werden wir eine neue Datei hinzufügen. Und wieder, wir werden diese Anzeigenmob-Renderer nennen, und dann müssen wir unsere Assembly-Referenz haben. Also Assembly Export Renderer, und wir brauchen einen Typ off Anzeige, wenn Sie kommen, Typ off ist sehr ähnlich wie IOS-Version bei Mob Renderers, und dann schließen wir diese einfach aus und dann werde ich nur mit der rechten Maustaste, lösen und beheben Sie all diese Dinge. Los geht's. Und jetzt muss Admiral Brenda Breath natürlich von natürlich vonder Ansicht Rendering erben. Und dies hat eine Art auf Ad-Mob-Ansicht. Komm schon, und dann will er android dot gms dot ads dot und wenn du willst. Also Cam wird mit der rechten Maustaste auf Wenig rendern und lösen diese Anweisung. Okay, jetzt sind wir bereit, tatsächlich in unserer Klasse zu feuern. Also wollen wir natürlich wieder außer Kraft setzen. Also lassen Sie uns unser on Element geändert überschreiben. Lassen Sie uns unsere Basisklasse dort und wir sagen, Wenn das Steuerelement nein ist, dann wollen wir etwas tun Also erstellen wir unsere bei weitem Anzeige entspricht einem neuen und wir wollen Anzeigenansicht Formulare Punktkontext und es ist nur mit der rechten Maustaste auf diese Anzeigenansicht Auflösung mit das, und dann müssen wir ihm eine Größe geben. Also fügen Sie Punkt hinzufügen Größe ist gleich Größe Punkt hinzufügen und wir geben nur diesem eine Ebene Banner und dann brauchen wir unsere Anzeigen Punkt Anzeigeneinheit I D gleich, und ich werde nur meine einfügen. Da gehen wir. Dann müssen wir unsere Anfrage stellen. Builder ist gleich einer neuen Anzeigenanfrage Dark Builder, und dann müssen wir unsere Anzeigen laden. Fügen Sie also dot load ad hinzu und übergeben Sie es unserem Antrag Builder dot build. Und dann haben wir unsere nativen Kontrollen gesetzt, wie wir es vorher in I uns für die Anzeige getan haben, und das sollte es so ziemlich decken. Also werde ich spielen, und wenn das Builds zum Simulator kommen und wir warten nur darauf, dass die Anzeige hoffentlich in Last geladen wird . Ich will nicht der Typ sein, der dieses Tutorial macht und dann nicht wirklich funktioniert. Los geht's. Also haben wir unsere Anzeige, die jetzt weitergegeben wird, eine letzte Sache, die ich Ihnen sagen würde, ist innerhalb Ihrer Anzeige empfangenen Methoden. Sie können auch tatsächlich einen Anzeigepunkt bei fehlgeschlagenen Methoden haben oder empfangen. Und drinnen können Sie sich eine Nachricht an die Konsole senden, nur um zu sagen, dass Sie keine Anzeige erhalten haben , aber es funktioniert. Das ist wichtig zu wissen. Okay, das schließt diesen kleinen Abschnitt zum Erstellen eines einfach tun es mal eine App. Ich hoffe, Sie haben es genossen, und Sie haben einen gewissen Wert daraus. Und gehen wir zu etwas komplizierterem über. 16. Einführung in das gerade erledigen X 10: Lasst uns mit dem nächsten Abschnitt weiterpflügen. Im letzten Abschnitt haben wir eine plattformübergreifende App erstellt, die es uns ermöglichte, einen einzelnen Listeneintrag in diesem Abschnitt zu haben . Wir werden dieses Konzept erweitern, also anstatt es nur mal eins zu tun, werden wir es einfach mal 10 machen müssen. Und das bedeutet, dass wir eine Listenansicht oder eine Tabellenansicht auf unseren Plattformen erstellen müssen. Darüber hinaus werde ich auch ein bisschen tiefer in die Zamel-Markup-Sprache eintauchen, und wir werden auch lernen, wie man Dinge zusammenbindet und ihnen erlaubt, sich zu ändern, wenn sich eine Variable in unserem Code ändert. Darüber hinaus werde ich auch ein bisschen tiefer in die Zamel-Markup-Sprache eintauchen, und wir werden auch lernen, wie man Dinge zusammenbindet und ihnen erlaubt, sich zu ändern, wenn sich Also lasst uns anfangen. Erstellen Sie eine neue Lösung in Xamarin Studio, und Sie sollten daran gewöhnt sein. Wir möchten Punktformulare App untersuchen, klicken Sie auf. Als Nächstes geben wir diesem einen unverwechselbaren Namen. Also nur um zu sagen, tun Sie es einfach x 10 ein geht, um das ohne eine Nummer X 10 zu setzen und wir werden eine portable Klassenbibliothek verwenden . Es nächste Projektname, Lösung, Name oder gut und lassen Sie uns einmal erstellen, das ist alles in der nächsten Vorlesung erstellt. Wir werden tatsächlich unsere App entwerfen und sie tatsächlich vermarkten, denn ja, es beginnt wirklich so früh 17. Tun Sie es X 10 App Design und erste Seite XAML: Jetzt, da wir ein grundlegendes Projekt eingerichtet haben, schauen wir uns das Design an. Also, wie Sie jetzt vertraut sind mit, wenn wir unsere Schuppen PCL öffnen und wir gehen zu Es ist Root-Verzeichnis, Rechtsklick und lassen Sie uns hinzufügen, wir wollen eine neue Datei, und dann wollen wir eine Formulardatei und eine Inhaltsseite Punkt Zamel und lassen Sie uns diese Hauptseite aufrufen und neue und wie üblich treffen, das erzeugt Beispiel, Markup-Datei und einen Code hinter der Datei. In der Marktakte von Zamel haben wir ein paar Dinge, die wir tun müssen. Ich werde das nur auf die nächsten Zeilen setzen. Sie können sie leichter im Video sehen, und das erste, was wir auf unserer Hauptseite tun müssen, ist, dass wir ihm einen Titel geben müssen, natürlich, so Titel ist gleich, um es einfach zu tun x 10 und wir kommen auf unsere Inhalte. Andi, da wir 10 Elemente in dieser App benötigen, müssen wir eine Listenansicht oder eine Tabellenansicht erstellen, wie es in I uns genannt wird. Also lassen Sie uns voran und tun Sie diesen Typ offene Klammer Listenansicht, und dann brauchen wir einen Namen dafür, und wir werden diese Listenansicht einfach aufrufen. Und dann brauchen wir ein Element ausgewähltes Ereignis, und dies wird ein Ereignis auslösen, das im Code dahinter enthalten ist. Immer wenn auf ein Element in der Listenansicht tatsächlich geklickt wird, so werden wir dies bei ausgewähltem Element aufrufen, und dann ist dies optional. Aber wir können ihm eine Zeilenhöhe geben, und weil wir nur 10 Zeilen haben, wollen wir sie nicht hineinquetschen. Also füllt es nur die Hälfte des Bildschirms, so dass wir großzügig sein können mit unserer Zeilenhöhe auf, sagen wir, 120 dafür und dann unsere Klammer schließen und das Tag schließen und dann etwas Platz im Inneren schaffen können . Das ist die grundlegende Listenansicht geladen. Jetzt brauchen wir eine Vorlage dafür. So geben wir Listenansicht Punkt-Elementvorlagen oder Vorlage. Entschuldigung. Schließen Sie die Klammern und schließen Sie die Tags an. Ich werde das nur erfinden, damit es leichter zu lesen ist. Dann brauchen wir eine Datenvorlage, um mit dieser Liste zu gehen. Das ist die Spitze dort. Schließen Sie die Tags wie gewohnt, und dann hat jede Liste eine Reihe von Zellen oder Rose, die wir sehen, wenn wir scrollen. Das heißt also untersuchen bildet eine Ansichtszelle wie diese. Lassen Sie mich diese auch in Delle und speichern Sie sie. Jetzt, in der View-Zelle, brauchen wir alle Elemente, die wir brauchen. Also brauchen wir einige Textfelder, die wir vielleicht ein Hintergrundbild benötigen. Und das ist, wo wir alles setzen. Und es gibt ein paar Möglichkeiten, während der Layouts im Inneren. Diese Ansicht wird verkauft, von denen die erste ein absolutes Layout ist, und die zweite ist ein relatives Layout. Wir werden beide hier nutzen, damit Sie sie lernen können. Geben Sie also offene Klammern absolut aus. Und dann müssen wir diesem eine Eigenschaft geben, die abgeschnitten wird, ist reich an Wahrheit. Und das bedeutet, wenn wir ein Bild haben, das zu groß für den Verkauf ist, wenn es außerhalb der Zelle geht, wenn wir das nicht auf true gesetzt haben, dann wird es unter der Zelle angezeigt, und wir wollen nicht, dass das passiert. Wir wollten auf die Größe von der Zelle oder der Straße klappen. Dann müssen wir einige Grenzen für dieses absolute Layout haben, und das tun wir, indem wir absolute Layout sagen. Ich kann heute kein Punktlayout buchstabieren. Grenzen sind gleich einem Komma, einem Komma, einem Komma eins, und das bedeutet nur, dass es seinen gesamten Container füllt. Die 1. 2 Werte sind also die Position. Wenn ich eine Position von 20,5 gab, würde es auf halbem Weg über den Bildschirm gehen, aber wir wollen, dass dies alles maximiert. Dann brauchen wir einige Layout-Flags. Und machen Sie sich vorerst keine Sorgen, Dr. Flags. Oh, sorry dot kann aus Flaggen ist gleich. Ich werde später darauf eingehen. Und dann natürlich wollen wir natürlichunser absolutes Layout-Tag schließen und das ein paar Ebenen hinunterwerfen. Okay, jetzt haben wir ein Layout bereit zu gehen. Lassen Sie uns einige tatsächliche Elemente einfügen, und die 1. 1, die wir brauchen, ist ein schönes Hintergrundbild. Also lasst uns Bild haben und Formen untersuchen. Es ist wirklich einfach, das reinzubringen. Wir sagen, Quelle ist gleich, und dann gehe ich einfach dieses BG dot jpeg auf, was Lachsformen tut, ist es geht über das Droidenprojekt und schaut hinein. Ressource ist und Ärger, und es geht über das IOS-Projekt und schaut hinein. Ressource ist also, wir wollen dieses Bild in diese beiden Ordner ablegen, und wir werden das in einer Minute tun, als ich ihn eingegeben habe. Also für dieses Bild brauchen wir ein Seitenverhältnis, und wir wollen, dass es sich füllt. Ich würde es eindämmen, und dann wollen wir eine Deckkraft haben. Und das bedeutet nur, wie durchsichtig ist es? Und was wir hier tun werden, ist, dass wir Ihnen das verbindliche Konzept vorstellen werden. Also, wenn Sie geschweifte Klammern öffnen und Bindung mit einem Capital B eingeben und dann werde ich sagen Alfa schließt geschweifte Klammern, diese Bindung ist ein Schlüsselwort, das Lachsformen ansieht und sagt: Okay, Okay, ich werde das nächste nehmen Wort, das Alfa als die Eigenschaft ist, die ich diesem einen Pass zuweisen werde. Dies wird also beginnen, uns Variablen einzuführen, die sich im Code hinter dem Zamel . Und wenn Sie das getan haben, lassen Sie uns Ford Slash und schließen es ab. Lassen Sie uns hinzufügen, dass Bild toe Ordner sind, so kommen Sie über zu Ihrem Android-Projekt dot zeichnen Stier Rechtsklick. Fügen Sie Dateien hinzu. Sehen Sie, ob ich mich erinnern kann, wo ich das hingestellt habe. Ich denke, es ist in meiner iCloud Samir informiert Kurs. Da gehen wir. BG Dodge ein Schwein und kopieren Sie es in und dann tun Sie das gleiche mit Resource ist bei Dateien BG Dodge ein Schwein . Natürlich werde ich das in den Abschnitt dieser Vorlesung aufnehmen, Sir. Oben auf der rechten Seite. Wenn du auf dich aufpasst. Für mich, klicken Sie auf die Ressource ist Tab. Sie können auch diese Bilder in Ihrer PCL speichern, aber es ist ein wenig komplizierter, und ich würde empfehlen, sie nur in den Droiden- und IOS-Projekten zu speichern. Okay, lassen Sie uns mit dem Rest unseres Layouts fortfahren. Das nächste, was wir erstellen müssen, ist ein Text, weil es do-Liste ist Müll ohne Text. Und um das zu tun, werden wir ein Stapel-Layout haben, das ein relativ out ist. Wir werden etwas Polsterung hineinlegen. Gleich und das geht von der linken Seite, oben rechts unten. So können wir sagen 10 gemeinsame 10 gemeinsame Null Komma Zahra. Und dann brauchen wir ein paar horizontale Optionen dafür, und genau dort werden wir es platzieren. Und wir wollen es am Anfang platzieren, das heißt Start und Expansion, und wir brauchen eine Orientierung, damit es weiß, wie man Dinge stapelt. Und das wird nur vertikal abgespielt werden die Klammern und dann fallen gelassen, dass Tag nach unten . Jetzt sind wir bereit, unsere grundlegenden Elemente einzufügen, und das ist ein Label mit etwas Text gleich zwei. Und dann wieder hier drin, werden wir etwas binden. Um das zu tun, sagen wir Binding Titel, es wird gehen, um nach der Titel-Variable suchen und wir wollen dies in den Vereinigten Arabischen Emiraten ausrichten. Also werden wir das einfach in die Mitte stellen, so dass es braucht, was auch immer Text da ist, und es in der Mitte von der Box. Und dann brauchen wir vergessen gleich und wir gehen und dann brauchen wir ein paar horizontale Optionen und wir wollen dies am Anfang des Containers setzen. Lass uns ein paar nette Sachen geben. Lassen Sie uns eine Schriftgröße gleich mittel haben, und wir brauchen eine Textfarbe gleich weiß, weil der Hintergrund tatsächlich ein dunkelgrün ist, so dass passt gut und schließen Sie es ab. Wir brauchen ein letztes Label, das ist der tatsächliche Inhalt unseres zu tun Artikel, so können wir sagen, dass Label-Text gleich einem anderen verbindlichen Inhalt ist . Und lassen Sie uns einige Y-Ausrichtungen darauf haben, was auch im Zentrum ist. Lassen Sie uns eine Schriftgröße haben und weil dies mehr Text als der obige sein wird, wir den kleineren machen. Und natürlich wollen wir, dass unsere Farbe wieder weiß ist. Also ist es lesbar und dann schließen Sie das richtig? Das rundet das Layout unserer App ab. Lassen Sie uns es der Fluch AP Page zuweisen. Also lasst uns aufmachen. Tun Sie es einfach x 10 Punkt CS und innen hier entfernen Sie all diesen Standardcode sagte die Hauptseite auf diesem und dann brauchen wir eine neue Hauptseite auf. Früher hätten wir gerade gesagt, ich möchte, dass Sie neue Hauptseite sagen. Aber dieses Mal haben wir keine Navigation in dieser App, und das bedeutet, dass wir zuerst diese Seite als Navigationsseite einstellen müssen, also ist das sehr wichtig. Andernfalls werden Ihre Navigationen in Zukunft nicht funktionieren, dann öffnen Sie unsere Klammern und fragen Sie uns nach einer Seitenroute. Dies wird also eine neue Hauptseite sein und dann diese in. Brauchen wir noch eine Klammer? Ja, das tun wir. Und dann können wir ihm einige Eigenschaften geben. Also in geschweiften Klammern schwächen rechts. Ein paar Dinge hier drin. Die 1. 1 ist, dass wir die Textfarbe von der oberen Leiste haben wollen. So sagen wir Bar Text Farbe gleich oder vielmehr gleich Farbe dart weiß ist. Und dann brauchen wir die Balkenhintergrundfarbe, und wir werden dies auf ungefähr die gleiche Farbe Grün wie in unseren Hintergrundbildern einstellen . Und um das zu tun, sagen wir Farbpunkt von hex. Und das erlaubt uns, eine heck String zu setzen, die, wenn Sie irgendeine Web-Programmierung gemacht haben, Sie wissen, was das ist. Und wir wollen einen Wert von 63 a d 72 dafür. Okay, jetzt lass es uns abfeuern und sehen, wie das auf unserem Simulator aussieht. Wenn es gut aussieht, können wir weitermachen und es nicht. Es besagt, dass für ausgewählte Elemente keine Methode deaktiviert ist, daher beschwert es sich, dass wir diese Methode nicht wirklich installiert haben. Und wenn Sie sich erinnern, es war weit hier oben auf Artikel ausgewählt, also lassen Sie uns das jetzt tun. Sänger waren hier. Gehen wir zur Hauptseite Punkt Zamel und dann drinnen hier werden wir unsere Methode in setzen und wir werden mit einer Öffentlichkeit beginnen und wir müssen dies zu einer Spüle machen. Aber das sehen wir uns später an. Vermeiden Sie auf Element ausgewählt, und dann brauchen wir ein Objekt, um mit diesem Aufstieg nach oben zu gehen und dann müssen wir ausgewählte Element geändert Ereignis sind Eier. Das ist ein Bissen E. Und das ist die Blaupause dafür. Wenn ich also jetzt auf Play klicke, sollte es sich nicht beschweren, dass wir diese Methode nicht haben und da haben wir sie eingeschaltet, wenn Sie bemerken, dass wir hier keine Bilder haben, obwohl wir es spezifiziert haben, und das liegt daran, dass wir noch keine Verkäufe oder Daten zugeordnet haben. Also, das ist in Ordnung. Aber du wirst es bemerken. In der oberen Leiste haben wir diesen grünen Hintergrund und den weißen Text, der perfekt ist. Es ist genau das, was wir brauchen 18. Was ist eine SQLite-Datenbank und warum verwende sie?: bevor wir mit der Codierung unserer App fortfahren, müssen wir diskutieren, was für eine Datenbank und warum wir eigentlich einen Android verwenden wollen und ich uns beide kommen mit einer nativen Sq-Light-Datenbankunterstützung. Und in fast jeder App, ohne Ausnahme, die Sie machen werden, müssen Sie Daten speichern. Und in den meisten Fällen diese Daten nicht nur von einem Typ. Es gibt viele Arten von Daten, so dass Sie diese rechteckigen Steine von Daten haben können. Sie können kreisförmige haben und Sie können verschiedene andere Arten haben. Jetzt wäre es sehr schwierig, diese beispielsweise in einer Textdateizu speichern , weil Sie alle zwei Strings konvertieren und dann speichern müssten. einer Textdatei , Ist das und wenn du es wieder rauskriegst, müsstest du wieder in Zahlen umwandeln, usw. Die Lösung dafür ist also eine Datenbank. Und wenn Sie sich die große blaue Basis als die Datenbank ausdenken, was sie tun kann, ist es oder all diese Bits von Daten für Sie in dieser Art von nativen String-Bildern zu konstruieren, diese Art von Sache und Datenbanken geben Ihnen auch viel Macht darüber, wie Sie Zugriff auf diese Dinge, so dass Sie eine Datenbank fragen können. Geben Sie mir diese Liste von Sachen mit all diesen verschiedenen Variablen, und ich möchte, dass Sie es auf eine bestimmte Weise bestellen. Also, zum Beispiel, bestellen Sie es in einer Weise, die ah es ausdrückt. Nach Datum, an dem es eingegeben wurde, oder nach Größe der Zeichenfolge oder nach Namen. Es gibt viele und viele Möglichkeiten, die Daten zu hacken, so dass eskalierte Datenbanken für APS absolut unerlässlich sind . Und wenn Sie denken, eskalieren Datenbanken als die wichtige Datenverbindung zwischen sich selbst und der tatsächlichen App auf dem Telefon, Sie werden eingestellt. Und sobald Sie eine anständige eskalate Datenbankklasse für verschiedene Methoden geschrieben haben, können Sie dann einfach kopieren und einfügen, die in zukünftigen Projekten überprüfen. Es funktioniert. Aber sobald Sie Ihren anständigen Kurs in Gang gebracht haben, müssen Sie ihn nie wirklich neu schreiben. 19. Installation einer Nuget zur Verwaltung von Installing: Lassen Sie uns eine Komponente Toe Zugriff verwenden. Die Datenbank befindet sich auf unseren Geräten. Wir könnten den Code von Grund auf schreiben, aber es gibt keinen Grund dazu, weil es so viele Komponenten gibt, die wir nutzen können , um unsere Entwicklungszeit zu verkürzen. Jetzt wird die Komponente, die wir verwenden werden, auf new get gespeichert. Also, wenn Sie Doppelklick auf Pakete in Ihrem gemeinsamen Projekt oder Ihre PCL und dann in das Suchfeld Suche nach sq lights Net PCL, dies sollte kommen mit dem, die wir sind nach kommen. Und wenn wir hier runter schauen, ist das das, was wir wollen. Wir wollen, dass das i d Escalate Dash Net Dash PCL ist, und es erwähnt speziell Zamarripa in der Spitze dort. Lassen Sie uns das Paket also dem gemeinsam genutzten Projekt hinzufügen. Und wir möchten das gleiche Paket zum Droid-Projekt hinzufügen, also sollte es ganz oben auf Ihrer Liste stehen. Klicken Sie nun auf Paket hinzufügen und wir wollen es in ich uns tun. Und da gehen wir hin. Und so geben Sie es einfach eine halbe Minute, um diese tatsächlich zu installieren. Und in der nächsten Vorlesung, nun, nun, schauen Sie sich tatsächlich an, dieses Paket zu implementieren und es für den Zugriff auf Datenbanken zu verwenden 20. Database - So bekommst du eine plattformübergreifende SQLite Datenbankverbindung: Das allererste, was wir tun müssen, um plattformübergreifend auf unsere Datenbanken zugreifen zu können, ist eine Schnittstelle zu deklarieren. Also, das ist richtig. Klicken Sie auf die Schuppen-PCL. Klicken Sie auf. Neue Datei hinzufügen. Wir wollen eine allgemeine leere Klasse und nennen wir das. I s Q L Licht und drücken Sie Enter und dann wollen wir diese Klasse zu einer Schnittstelle ändern. Also ein Interface. Ich frage Sie ein Licht und dann drinnen hier, lassen Sie uns diesen Konstruktor loswerden und wir wollen zuerst, kommen Sie nach oben und lassen Sie uns eine Verwendung sq-Licht einfügen, weil wir das brauchen. Dann, hier unten, fangen Sie an, sq-Lichtverbindung zu tippen, erhalten Sie eine Verbindung. Und der Grund, warum wir diese Schnittstelle brauchen, ist, weil Datenbanken an verschiedenen Orten auf Android und ich uns gespeichert werden . Diese Schnittstelle ermöglicht es uns, mit den einzelnen IOS Android-Projekten zu sprechen und tatsächlich eine Verbindung zur Datenbank zu bekommen . Sobald wir diese Verbindung haben, kann das Einfügen von Dingen in die Datenbank auf eine gemeinsame Art und Weise erfolgen weil der Code derselbe wäre. Lassen Sie uns das speichern, Also, um damit zu gehen, lassen Sie uns zuerst die Datenbankverbindung in unser Android-Projekt einfügen. Also komm runter zu Android, richtig? Klicken Sie darauf, klicken Sie auf neue Datei hinzufügen und wieder wollen wir eine leere Klasse und lassen Sie uns diese sq Licht nennen und dann unterstreichen Android und drücken Sie Enter und es ist für uns erstellt. Jetzt werden wir das als Klasse belassen, aber oben müssen wir einige Überlegungen hinzufügen. Also zuerst müssen wir System dot io hinzufügen, weil wir auf eine Datei zugreifen werden. Also müssen wir auf die Eingangsausgabe zugreifen. Und dann, natürlich, wir haben eine Verwendung Samura hofft Xamarin Punktformen, und das ist, was wir brauchen. Nun, was wir hier oben brauchen, ist eine Art Deklaration, die uns sagt, dass dies eine Abhängigkeit von etwas anderem ist , das in unserer PCL existiert. Und die Art und Weise, wie wir das tun, ist, indem wir Assembly in eckige Klammern eingeben. Dies ist halb Karlan Abhängigkeit, die eine Kapitalabhängigkeit D sein sollte. Und diese Abhängigkeit hat einen Typ aus und dann in Klammern Ah, wir wollen es einfach tun X 10 Darts Droid dot sq Licht Unterstrich android und dann schließen Sie alle Ihre Klammern und stellen Sie sicher, dass sie richtig sind. Okay, Also, sobald Sie das getan haben, lasst uns in unsere Klasse kommen und unter Sq-Light android, Wir sind tatsächlich definieren eine Region. Also, aber ein Hash-Tag in und Region frage ich Sie Licht und wir wollen sagen, dass dies eine Implementierung ist und dann hier drin wir tatsächlich den Code schreiben, der uns erlaubt, diese Verbindung zu erhalten. Also, Sq Licht-Anschluss Hoffnungen, sq Licht-Anschluss. Und das wird die Get Verbindung sein, die unser Ich frage Sie Licht tatsächlich in dem gemeinsamen Projekt referenziert . Also wird es zu Android kommen, finden Sie das, und es wird hier runter gehen und tatsächlich die Verbindung für uns bekommen. Also hier drin brauchen wir eine VAR-Datei. Name auf diesem wird Datenbank Punkt db drei als Erweiterung sein und dann brauchen wir einen VAR-Dokumenten-Pfad . Und das ist der interne Dokumentenpfad für unsere App auf dem Weg, den wir bekommen. Das ist durch die Umgebung dot bekommen Ordnerpfad und wir wollen Umwelt dot speziellen Ordner Punkt persönlich. Also haben wir hier viele, viele Optionen, aber wir wollen dieses Geheimnis vor anderen APS bewahren. Also spezielle Ordner doc, persönliche Kleidung, ein paar Klammern, dann müssen wir den Pfad aus dem Dokumentpfad im Dateinamen zusammen erstellen. So speichern wir unseren Pfad ist gleich Pfad Punkt kombiniert, und dann müssen wir es auf Pfade übergeben. Also, natürlich, der Dokumentpfad und der Dateiname auf, was das tun wird, ist tatsächlich mischen diese zusammen und geben uns einen Pfad zur Datenbank. Und dann müssen wir eine Verbindung eröffnen. Bisher ist die Verbindung gleich einer neuen Quadrat-Licht-Hoffnungen. Fragen Sie Licht Punkt sq Lichtverbindung und dies fragt uns nach einem Pfad, den wir gerade erstellt und speichern Timer Ticks. Lassen Sie uns das als wahr haben und schließen Sie es ab. Und dann endlich müssen wir diese Verbindung zurückgeben. Also wollen wir die Verbindung zurückgeben, weil wir hier oben in unserer öffentlichen Erklärung gesagt haben, Wir werden etwas von diesem Typ zurückgeben und die Verbindung eskalieren und dann unten hier unten, werden wir diese Region schließen, also sagen wir und Region, und das summiert die Gesamtheit aus dem Android-Teil des Zugriffs auf die Sq-Light-Datenbank. Lassen Sie uns das gleiche tun auf ich uns auf Iose Projekt mit der rechten Maustaste zu kommen. Fügen Sie eine neue Datei hinzu und wir wollen sq light underscore I uns und beachten Sie die Großschreibung dort. Hit, Enter und Sie werden sehr froh sein zu wissen, dass dies der Android-Version sehr ähnlich ist. Also brauchen wir einige, die unser System dot io verwenden und Samrin Punktformen verwenden. Und dann brauchen wir unsere Montagedekoration. Also Assembly Und das ist eine Abhängigkeit, die , natürlich, hat einen Typ offen die Klammern einfach x 10 Punkt und wir wollen, ich fragte, es wird kommen und schauen Sie sich diesen Namen Raum Punkt Sq Licht Unterstrich, Ich fragte, Schließe deine Klammern ab und das tut das. Und dann hier unten wollen wir diese Klasse Toe tatsächlich erben von I sq Licht Lassen Sie mich einfach überprüfen. Wir haben das in Android getan, sind wir nicht wussten, dass ich etwas vergessen hatte. Ich bitte Sie Licht, es würde gehen. Also hier sind wir in den Augen uns ein in der Iris ein B wieder wollen an diesem Konstruktor vorbei gehen und eine Region erstellen und einige s einige Zugangscode erstellen. Also, was wir tatsächlich tun können, ist einfach den Android-Code direkt nach hier zu kopieren, damit ich ihn in gedrückter Kopie auf einem leeren Raum ablegen kann , der nichts kopiert hat. Kommando. Siehst du, lass das rein. Da gehen wir. Also wieder, wir haben unsere Get Verbindung. Wir haben einen Dateinamen, und das wird der gleiche sein wie zuvor. Und hier wieder, das ist das gleiche, weil es geht und findet den persönlichen Ordner für diese App auf ich uns. Und dann wird das etwas anders sein. In der Tat, vorher hier, müssen wir einen Bibliothekspfad haben. Also unter Dokumentpfad, lassen Sie uns unseren Bibliothekspfad gleich Pfadpunkt kombiniert ist, und wir müssen den Dokumentpfad öffnen und wir müssen tatsächlich zwei Punkte hinzufügen, um das Dateisystem, das in Betrieb ist auf ich uns. Sie sich jetzt keine Sorgen, aber wissen Sie, dass wir es dafür brauchen. Und dann wollen wir einen Bibliotheksordner öffnen und das schließen und dann in der nächsten Zeile unter Pfad statt Dokumentpfad wollen wir tatsächlich Bibliothekspfad. Und dann ist alles gleich wie zuvor. Wir erstellen eine Verbindung und wir geben diese Verbindung zurück. Ich werde nur nach oben scrollen und ich habe Probleme hier. Da steht, dass wir ein Problem haben. Mal sehen, was es Quadratlicht ist. Ah, das liegt daran, dass ich hier kapitalisieren muss, dass ich einen kleinen Fehler gemacht habe. Du musst auf das aufpassen. Wenn Ihre Programmierung ist, ist diese Großschreibung wirklich wichtig. Ok. Jetzt, nur um in unserem gemeinsamen Projekt Weg an der Spitze hier zusammenzufassen, haben wir auf Quadrat-Licht erstellt. Und das besagt, dass dies eine Schnittstelle ist. Ich möchte, dass Sie in die Android- und IOS-Projekte und Windows Phone gehen, wenn Sie es haben. Und ich möchte, dass Sie Verbindung bekommen, so Wunder hier drüben findet diese Abhängigkeit und packt die Verbindung für uns sowohl für Android als auch ich uns. 21. Database - So stecken und löschen und abrufen von Elementen: In der letzten Vorlesung haben wir eine Verbindung zu unserer Datenbank oder einer Schnittstelle hergestellt. Also hatten wir das in unserem gemeinsamen Projekt und wir sahen es Android und IOS aus und bekamen die Datenbankverbindung . Also wollte ich diese auf das schließen, was wir haben. Zwei Großartig. Jetzt ist es, ähm, Code, um tatsächlich auf unsere Datenbank zuzugreifen, um Dinge einzufügen, Dinge zu löschen und eine Liste von Dingen zu erhalten, die wir im Allgemeinen darin haben. Also unter tun Sie es einfach x 10 lassen Sie uns mit der rechten Maustaste klicken und eine neue Datei hinzufügen. Wir wollen eine leere Klasse und rufen wir diese Datenbank jetzt. Diese Klasse wird den gesamten Code enthalten, um auf die Datenbank zuzugreifen. Um das zu tun, brauchen wir einige Anweisungen verwenden. Natürlich werden wir Sq-Licht verwenden. Wir werden ZAM Marine-Formulare verwenden werden tatsächlich Systempunktsammlungen dot generisch weil wir Listen benötigen und Systempunktlink verwenden, um einige ausgefallene Konvertierungen und verschiedene andere Dinge mit Link zu tun , weil es wirklich Nützlich. Okay, hier unten in unserer Klasse, das erste, was wir brauchen, ist eine Variable auf Klassenebene, und das wird privat sein. Es ist nichts anderes kann darauf zugreifen. Sq-Licht-Verbindung und geben Sie dann Unterstrich-Verbindung. Der Unterstrich hat keine Relevanz ist nur ein Teil des Variablennamens innerhalb der Datenbank, die unsere anfängliche Isar ist. Wir müssen diese Verbindung erstellen, so unterstrichen Verbindung ist gleich dem Abhängigkeitsdienst dot get und dann wollen wir eine Art von i sq Lichtpunkt bekommen Verbindung. Also, der Code, den wir in der letzten Vorlesung geschrieben haben, kommt jetzt hier ins Spiel, um es uns zu ermöglichen, diese Verbindung zu holen . Wenn wir versuchen, auf eine Datenbank in einer Tabelle in dieser Datenbank zuzugreifen und sie nicht existiert, werden wir ein Problem haben. Der Weg, um das mit SQL SQL-Datenbanken umgehen, besteht darin, die Tabelle jedes Mal zu erstellen, wenn Sie darauf zugreifen. Es wird nur die Tabelle erstellt, wenn sie nicht existiert. Also, wenn Sie drücken, Tabelle erstellen und Sie bereits Daten darin haben, wird nichts getan. Nichts wird geändert und wir wollen eine Tabelle erstellen, und diese Tabelle wird unser zu tun Listenelement sein, und das wird rot, weil wir sie noch nicht erstellt haben, aber wir werden sie bekommen. Dann brauchen wir eine Methode toe, tatsächlich bekommen die Dinge zu tun Also sagen wir öffentlich und wir wollen eine Liste von diesem und wieder. Wir wollen, dass Listenelement zu tun, und wir wollen diese get to do items aufrufen und Oh, Methode erstellen . Und dann ist dies einfach eine Zeile Code und wir werden von T in Unterstrich Verbindung Punkt-Tabelle zurückkehren Und wir wollen diese Tabelle überprüfen, etwas, um dieses Wort zu kopieren, und wir wollen diese Elemente auswählen und wir wollen sie in eine Liste, die aufgelistet werden soll. Also, was das macht es all unsere, Gegenstände aus dieser Verbindung auf diesem Tisch zu tun? Dann, natürlich, müssen wir tatsächlich ein to do Element hinzufügen. Also lasst uns öffentliche Leere haben, weil wir nichts von diesem an zurückgeben werden, um Gegenstand zu tun. Und dies wird ein Typ aus sein, um ein Listenelement zu machen, und dieser Code ist einfach genug. Wir sagen, Verbindung Punkt inset und wir übergeben es den Gegenstand und dann nur für die Bequemlichkeit. Wenn wir eine ganze Reihe von Dingen haben, die wir hinzufügen möchten, können wir eine andere Methode erstellen, die öffentlich sein wird, vermeiden Sie hinzufügen, um von Thames mit einem S zu tun und dies Wir werden eine Liste von unserem zu tun Listenelement übergeben , und wir werden nennen Sie diese Liste Elemente öffnen Sie unsere Klammern, schloss sie, und dann hier werden wir eine C scharfe Funktion verwenden, die jeweils vier ist. Also gehen Sie durch jedes Element in dieser Liste von Elementen, so werden wir sagen offene Klammern und weit Element in Elementen und dann unterstrichen Verbindung Punkt Inset Element und schließen Sie es ab. Also, nur um diese vier zu wiederholen, wird jeder einzelne von ihnen durchgehen, und jedes Mal, wenn es einen bekommt, es es in die Datenbank einfügen. Das sollte alles sein, was wir für jetzt brauchen. Das nächste, was wir tun müssen, ist tatsächlich dieses Datenmodell zu erstellen, auf das ich hier Bezug genommen habe um einen Listeneintrag zu erstellen, und das ist, was wir in der nächsten Vorlesung tun werden. 22. So erstellen Sie ein Datenmodell: In der letzten Vorlesung haben wir unseren Datenbankcode erstellt und auf diese verwiesen, um Listenobjekte zu tun. nun Diese werdennunals Datenmodell bezeichnet. Sie sind einfach eine Containerspitze. Halten Sie eine Reihe von Daten, um ohne zu tun Liste zu tun. Also, was wir tun müssen, ist eine Klasse für diesen Rechtsklick auf unser gemeinsames Projekt erstellen. Neue Datei hinzufügen. Wir wollen eine leere Klasse und wir werden dies aufrufen, um Listenelement zu tun und neu den Konstruktor innerhalb der Klasse entfernen . Also sind wir einfach mit der Klasse übrig. Nun, dies wird den Quadrat-Licht-Teil unseres Projekts, den Datenbank-Teil, nutzen . Also müssen wir eine Verwendung Sq-Licht-Anweisung haben. Dann innerhalb der Klasse ist das allererste, was wir haben müssen, ein öffentliches Interject i d. Und wir werden ein get und ein Set haben, das uns erlaubt, darauf zuzugreifen. Der Grund, warum wir nicht I d haben, ist, weil sq Light Datenbanken auf eindeutige Identifizierungen angewiesen sind und sie normalerweise ein I D. genannt und sie sind normalerweise ein Interview. Und über dieser Zeile müssen wir einige weitere Eigenschaften zu diesem Interview hinzufügen, von denen die erste Primärschlüssel genannt wird. Also, wenn Sie Ihre Datenbank sagen, gehen Sie und suchen Sie nach diesem I d. Es weiß, diesen tatsächlichen Parameter zu suchen, wir brauchen einen weiteren und das heißt Auto-Inkrement und Auto-Inkremente hat einen Blick auf Ihre aktuelle Datenbank und alle die I ds Andi Es findet die höchste in Bezug auf ah, eine Zahl. Und wenn Ihr höchster ist, sagen Sie 10, es wird dann dem nächsten einen Wert von 11 geben. Sie müssen sich also nie darum kümmern, dies tatsächlich zuzuweisen. Ich d. Diese Gegenstände hier oben werden automatisch den nächsten für Sie zuweisen. Also, jetzt brauchen wir einige Variablen, um tatsächlich Do-Listenelemente auszuhalten, und die erste 1, die wir brauchen, ist eine öffentliche Zeichenfolge, und das wird unser Titel sein. Und wir brauchen ein get und gesendet, so dass wir darauf zugreifen können und dann brauchen wir eine andere öffentliche Zeichenfolge und dies wird der Inhalt unserer Listenelemente zu tun sein. Also die Notizen, wenn Sie wollen und wir müssen bekommen und setzen, dass endlich brauchen wir eine andere Zeichenfolge und das heißt Alfa und das wird etwas ziemlich clever zu tun. Es wird die Kapazität oder die See durch nous aus jeder Zelle in unserer Tabelle eingestellt, und ich werde das ein wenig später abdecken, wie wir in die Feinabstimmung aus unserer App bekommen. Aber für jetzt, nur wissen, dass es ist, was es tun wird, und wir müssen ein get and set für es und speichern, das ist, dass das Datenmodell vervollständigt. Und wenn Sie das jetzt schließen, wandten sich alle zu Blau und wir haben keine Reds mehr in der nächsten Vorlesung, weil wir jetzt alles erstellt haben, würde tatsächlich einige Standardwerte in unsere Datenbank einfügen , und dann werden wir diese Standardwerte in unserer Listenansicht anzeigen. 23. So fügen Sie Datenbankelemente in eine Listenansicht ein: wir haben eine Datenbank, wir haben ein Modell für unser Listenelement zu tun, und jetzt müssen wir diese mit der tatsächlichen Listenansicht in unserem up verbinden. Um dies zu tun, öffnen wir unsere Hauptseite Punkt Zamel dot CS und dann innen hier unter dem Konstruktor vor initialisiert oder besser gesagt, nach initialisierten Komponenten. Zuerst müssen wir nachsehen. Es gibt tatsächlich etwas in unserer Datenbank. Andernfalls erhalten wir einen schrecklichen Fehler, wenn es nicht so ist, sagen wir einfach, überprüfen Datenbank so gefüllt. Und wenn wir überprüft haben, dass es gefüllt ist, dann können wir tatsächlich einige Dinge zu unserer Listenansicht zuweisen. Also geben Sie, Listenansicht. Und jetzt wird dieser Variablenname von der Hauptseite Punkt Zamel hier gezogen. Also Listenansicht nicht. Und wir brauchen die Quelle eines Elements, weil jede Liste eine Datenquelle benötigt, wie eine Quelle von Daten die tatsächlich in ihren Zellen steckt. Und um dies zu tun, werden wir eine andere Methode haben, die wir noch nicht erstellt haben, die heißt, Liste zu tun, richtig? Also müssen wir Methoden lesen. Lasst uns sie erschaffen. Die erste 1, die wir erstellen möchten, ist Check. Die Datenbank ist gefüllt, also lasst uns void haben und lasst uns das nach unten kopieren und unsere Methode erstellen, und dann neigt es zu einer normalen Farbe. Also, was wir hier tun werden, ist zu überprüfen, ob die Datenbank leer ist. Wenn ja, werden wir einige Standardwerte eingeben, damit wir keine Fehler bekommen. Das erste, was wir tun, ist zu sagen, ob und dann wollen wir eine Verbindung zu unserer Datenbank, so dass neue Datenbank keine Elemente zu tun bekommen, und dies bekommt eine Liste von Elementen in der Datenbank, und dann müssen wir diese Punktanzahl zählen. Und wenn das weniger als eins ist, bedeutet das, dass wir keine Gegenstände haben. Ich möchte, dass Sie den folgenden Code und einige Skates ausführen, aber hier kommentieren, die Datenbank mit Standard gefüllt ist. Das erste, was wir tun müssen, ist eine Liste von den Dingen zu erstellen, die wir bisher erstellen werden, Elemente sind gleich einer neuen Liste, und diese Liste benötigt einen Typ, der Liste, Element und initialisieren ist . Jetzt müssen wir einige Dinge zu dieser Liste hinzufügen. Also vier int I ist gleich Nicht, bis ich weniger als 10 I plus plus auf das, was das tun wird, ist tatsächlich nehmen Sie mich in eine vier Schleife, und es wird ich eins nach dem anderen jedes Mal zählen, wenn es um geht, bis es erreicht. Ich bin neun oder weniger als 10. Und das bedeutet, weil wir Null angefangen haben. Ich werde eigentlich 10 Mal herum gehen. Diese Schleife wird 10 mal laufen. Und weil unsere APP 10 Listenelemente hat, ist das perfekt. Jedes Mal, wenn es durchläuft, möchten wir etwas zu unseren Artikeln hinzufügen. Also sagen wir Punkte Punkte und öffnen unsere Klammern und dann auf eine neue Zeile. Nur damit es klar ist, sagen wir, wir möchten, dass Sie eine neue zu tun Listenelement offene Klammern Klammer erstellen. Und ich möchte, dass Sie diesem einen Titel aus Task Space Zitat geben und dann plus und dann in Klammern, werden wir sagen, ich plus eins. Und warum machen wir das? Weil ich möchte, dass dies Aufgabe eins jedes Mal sagt, wenn es umgeht und dann beauftragt wird, dann Aufgabe drei zu machen. Aber ich fänge eigentlich auf Null an und endet auf neun. Also, wenn ich es ohne das Plus eins verlassen würde, würde es sagen, ich Null I eins ich zwei bis ich neun oder Aufgabe neun eher. Aber wenn ich das hatte, dann ist es richtig. Und dann muss ich das natürlich ändern, weil es derzeit eine Zahl zu einer Zeichenfolge und dann Komma . Dann muss ich ihm etwas Inhalt geben und das ist gleich Beschreibung auf Lassen Sie uns Dash Temp zu bearbeiten und dann einen Kommentar. Und wir hatten noch eine letzte Sache, nämlich Alfa. Ich werde einige treffen Matt CIA Alfa geht von 0 zu 1. Null bedeutet also, dass Ihr Artikel durchsichtig ist, bedeutet, dass er undurchsichtig ist. Also müssen wir ein Minus subtrahieren und dann zwei Klammern öffnen und double I eingeben, weil wir das werfen müssen. Ich bekomme ein Doppelgänger, weil Alfa davon ausgeht, dass ich durch 20 geteilt bin. Also, wenn Sie jedes Mal darüber nachdenken, wenn wir diese Schleife umgehen, sagen 0/21 über 22/20 und dann sagen wir eins minus diesen Wert. Es ist der Alfa nimmt langsam ab, während wir diese Schleife umrunden. Also lassen Sie uns die Klammer schließen und die letzte Klammer abschließen und dann, weil es eine Zahl ist und wir eine Zeichenfolge brauchen. Wir sagen Doc zu String und schließen dann die Initialisierung von unserem Artikel und schließen Sie die Klammer ab, die wir gehen. Alles hat sich in die richtige Farbe verwandelt. Jetzt haben wir eine Liste von Gegenständen. Was wir tun wollen, ist unter dieser vier Schleife. Fügen Sie diese zur Datenbank hinzu. Sagen Sie also neue Datenbank Dr. Ad, um Elemente zu tun und geben Sie ihm dann die Liste, die wir gerade erstellt haben , und das sollte klären. Jetzt müssen wir unsere „get to do“ -Liste erstellen. Also lasst uns das kopieren. Kommen Sie hier runter und das wird eine Liste zurückgeben, um Listenelemente unsere Klammern zu öffnen , unsere Methode zu erstellen, und das ist nur ein paar Zeilen, die var Elemente sind gleich einer neuen Datenbank. Offene Klammern Punkt bekommen, um Elemente auf diesem geht eine Liste zurück und dann müssen wir schließlich diese Elemente zurückgeben. also zu unserem Konstruktor kommen, , wenn wir hier hineinspringen wird alles initialisiert, wenn wir hier hineinspringen. Es überprüft die bevölkerten Datenbanken, wenn dies nicht der Fall ist, wird es es es tatsächlich für uns füllen. Das wird also erst passieren, wenn wir die App zum ersten Mal laden. Danach wird dies immer einige Elemente haben, so dass es nie wieder ausgeführt wird. Dann wird es zu unserer Listenansicht springen und seine Elemente als was immer es von get to do Liste bekommt , was die Elemente aus unserer Datenbank sein werden. Lassen Sie uns treffen, spielen und tatsächlich testen, und es sollte unsere Datenbank vorfüllen und dann zeigen Sie uns unsere Liste der Dinge. Nun, wenn Sie sich daran erinnern, dass Alfa, das wir eingestellt haben, langsam abnimmt und langsam tiefer wird. Und was hier passiert ist, ist, wenn ich zu Xamarin zurückkomme und es aufhöre, in unserer Hauptseite Hund Zamel zu laufen , mit unserem Bild, wir setzen unsere Rapacity als verbindliche Zehe Alfa. Also ging es los, fand, dass Al Fran Tribut und band es daran. Und natürlich ist es selbstverständlich auch verbindlich für diesen Titel und Inhalt aus dem Datenmodell, das wir erstellt haben. Okay, so fügen Sie Datenbank-Elemente ein, holen Sie sie wieder heraus und zeigen Sie sie in einer Listenansicht im nächsten Abschnitt an. Wir werden tatsächlich an der Verkabelung ein bisschen mehr bis zu dieser App aussehen und es ein wenig mehr funktionale 24. So binden von Variablen zwei Möglichkeiten in Xamarin: Schauen wir uns an, wie man diese beiden Einträge bindet Zwei Möglichkeiten. Springen Sie in den Code dahinter, was Sie tun, Seite Punkt Zamel Punkt CS oben bearbeiten, wir brauchen eine weitere using-Anweisung, und das ist mit ich ging Systempunkt-Komponenten-Modell und hier unten in unserer Klasse, bevor wir zum Konstruktor, schaffen Sie ein wenig Platz, und wir werden das eigentliche Element erstellen, das wir binden werden. Dies wird also ein öffentliches Listenelement sein und dies werden wir das Modell aufrufen, unsere Klammern öffnen, und wir werden festlegen, dass wir ein get haben und innerhalb dieses bekommen, werden wir ein to do Listenelement als Bindungskontext zurückgeben. Sie werden feststellen, dass wir es in ein zu tun Listenelement umwandeln müssen und dann schließen Sie das aus und dann brauchen wir einen Satz. Also sagen wir „Set“. Und hier haben wir unseren Bindungsfindungskontext gleich dem Wert ist, und dann müssen wir abfeuern und auf Eigenschaft geändert, um es wissen zu lassen, dass wir tatsächlich den Wert innerhalb dieses Modells geändert haben und dann schließen, dass sie ausgeschaltet und die -Modell. Okay, Jetzt müssen wir unsere zu bearbeiten Seite einrichten. Und wenn Sie sich erinnern, wenn wir diese Seite starten, müssen wir einen zu tun Artikel übergeben. Und im Konstruktor, offensichtlich, ist, wo wir das tun werden. Also sagen wir, um Liste Kämpfen zu tun, wir werden Unterstriche Modell zu tun. Also, jetzt haben wir es übergeben, wir müssen es in unser Hauptmodell kopieren, also Modell ist gleich Unterstrich Modell, und dann nur für Schönheiten, lasst uns einen Titel auf diesem Bildschirm haben und wir werden diese Bearbeitung nur so weiter nennen. Der Benutzer weiß, welchen Bildschirmregen und was er hier tun soll. Okay, jetzt müssen wir eine Spardose haben, denn in unserem Zamel haben wir hier gesagt, wenn Sie angeklickt werden, auf Speichern schießen, um das zu tun, wir gehen einfach an die Öffentlichkeit, nichtig auf Safe, und dann geben wir ihm ein Objekt, das ein Absender ist und die Standard-Event-Hunde E. Und das kümmert sich darum. Okay, Also, wenn er versucht hat, zu bauen, werden wir einen Fehler bekommen, weil hier drüben in seiner Do Edit Seite tatsächlich will, dass wir es etwas übergeben . Also müssen wir die e-Punkt-Elemente ausgewählten Gegenstand werfen und vor diesem öffnen und schließen Sie Ihre Klammern und wir werden dies zu einem to do Listenelement umwandeln. Also jetzt, wenn wir spielen und wir diese Seite öffnen, sollten wir den Titel und die Beschreibung für uns und einen Speicher-Button haben, mit dem wir spielen können. Also, wenn ich dieses Top traf, da gehen wir, wir haben es. Und hier drinnen kann ich Dinge eingeben. Aber wenn ich auf Speichern klicke, passiert nichts, weil wir immer noch eine leere Speichermethode haben. Okay, lassen Sie uns aufhören, zu laufen. Und in der nächsten Lektion werden wir uns diese Methode zum Speichern ansehen und einen Weg zum Speichern in unserer Datenbank erstellen. 25. So öffnen Sie eine neue Seite, einen Controller oder eine Aktivität in Xamarin-Formularen: Lassen Sie uns jedes Mal eine neue Seite erstellen und öffnen, wenn wir etwas auf unserer To-Do-Liste klicken. Um dies zu tun, natürlich müssen wir natürlichzuerst eine neue Hauptseite Hund Zamel erstellen. Wir sind nicht Haupt bezahlt, sondern Nur eine neue Seite, Rechtsklick auf unser gemeinsames Projekt Hinzufügen neuer Dateiformulare, Inhaltsseite Samel und wir werden dies nennen, um es zu tun Seite, und es schafft die Zamel und den Code hinter uns. Also werden wir das vorerst leer lassen. Wir werden uns darauf konzentrieren, wie wir diese Seite auslösen. Also kommen Sie zu Ihrer Hauptseite Punkt Zamel dot CS und wir möchten diese Seite jedes Mal öffnen, wenn wir etwas klicken. Und wenn Sie sich erinnern, es ist, wie auf Elemente ausgewählt, die auf der Hauptseite dot Zamel war hier in der Listenansicht. Also hier drin brauchen wir ein bisschen Code. Zuerst müssen wir ein wenig Code haben, der unserem Programm sagt, den Klick nicht wirklich zu verarbeiten . Wenn die Zelle, auf die geklickt wird, leer ist, und die Art und Weise, wie wir das tun, ist, wenn e Punkt ausgewähltes Element gleich wissen, dann zurück. Okay, also, sobald du das aus dem Weg hast. Zuerst müssen wir die Zeile de auswählen. Wenn Sie also eine Straße auswählen, hat es eine graue Überlagerung, die besagt, dass Sie sie tatsächlich ausgewählt haben oder eine andere Farbe Wenn Sie auf Android sind, abhängig von Ihrem Thema. Also müssen wir eine Möglichkeit haben, diesen Hervorhebungsmechanismus tatsächlich zu de auszuwählen. Die Art und Weise, wie wir das tun, ist, zuerst den Absender zu bekommen. Also werden wir Listenansicht sagen, weil wir etwas Absender kosten werden. Also greifen wir den Absender und wir sagen, Hey, Hey, das ist eine Listenansicht und dann werden wir sagen, Selected item ist gleich zu wissen, nur um diesen Blitz von Grau loszuwerden, wenn Sie darauf klicken, dann müssen wir die tatsächlich zu bearbeiten Seite zu tun. Also werden wir unsere retten, um es zu tun. Paige ist gleich einer neuen Bearbeitungsseite, und es nimmt keine Argumente in It Konstruktor. Also haben wir es. Ist das dann müssen wir zu ihm navigieren. Und das ist der Grund, warum ich hier eine Spüle gesetzt habe, weil wir hier unten ein Gewicht haben werden, wie wir es auf den Stapel schieben, ist Navigationspunkt Push ein Denken und dann übergeben wir es die Seite, die wir gerade erstellt haben, um Seite bearbeiten zu tun. Okay, also werde ich das im iPhone-Simulator spielen, und wenn ich darauf klicke, sollte es eine neue Seite für uns öffnen. Klicken Sie also hier. Und da gehen wir hin. Es öffnet es und Sie werden feststellen, dass es trägt das Thema durch oben hier vor dem grünen Hintergrund und dem weißen Text. Und wenn ich zurückstöße, bringt es mich zurück. Okay, so navigieren Sie zwischen den Seiten. Und bevor wir die Lektion beenden, werde ich nur auf etwas sehr, sehr Wichtiges hinweisen , und es fängt viele Anfänger auf. Und das ist in unserem tun Sie es einfach x 10 in unserem Schuppen-Projekt. Diese Hauptseite habe ich in neue Navigationsseite. Wenn Sie vergessen, dies zu setzen und Sie einfach eine neue Hauptseite setzen, dann wird alles funktionieren. Aber wenn Sie klicken, versucht es, tatsächlich die Navigationsseite dahinter zu bekommen, so dass wir die beiden überlagern können, um die Seite zu bearbeiten . Und wenn Sie dies nicht enthalten haben, kann Ihre App das nicht tun. Du wirst also eine schreckliche Ära bekommen, die einen Absturz mit sich bringt. Denken Sie also immer daran, wenn Sie über Ihrem Stack navigieren möchten, benötigen Sie diesen 26. Das XAML des of bearbeiten erstellen: Lassen Sie uns das ausfüllen, um einen Teil unserer Seite zu bearbeiten. Also auf Ihrer Bearbeitungsseite, Dr. Hamel, das ist großartig. Einige Elemente. Ich werde nur Dinge bewegen, also sieht es viel klarer aus. Das erste, was wir tun müssen, ist hier oben in der Erklärung. Deklarieren Sie ein anderes Element, und dies ist ein weiterer XML-Namensraum. Und das hier ist lokal. Dies ist gleich CLR Dash Namensraum, und dann brauchen wir den Namen aus unserem Namensraum. Also, wenn Sie zu einem Teil unseres Projekts gehen, kopieren Sie das einfach und legen Sie es dort ab, und dann brauchen wir Doppelpunkt und Assembly gleich, und dann brauchen wir Doppelpunkt und Assembly gleich, und das ist auch der Name Raum und schließen Sie Ihre Zitate. Okay, jetzt sind wir bereit, einige Inhalte auf unserer Inhaltsseite zu platzieren. Also hier drin, schaffen Sie ein wenig Platz. Ich werde es um eine Registerkarte eingerückt. Es ist also klar, und wir werden ein Standard-gestapeltes Layout haben, und wir werden unsere horizontalen Optionen als Zentrum festlegen und erweitern, wer und wir werden unsere vertikalen Optionen als das gleiche Zentrum setzen und erweitern und wir brauchen eine Orientierung. Schließlich, was praktisch sein wird. Schließen Sie es ab und lassen Sie das andere Tag fallen. Ok. Hier brauchen wir zunächst einen Textfeld-Zehe. Halten Sie unseren Titel eins, um unseren Inhalt zu halten und ein letztes Element, das eine Schaltfläche sein wird, damit wir alles speichern können, was wir ändern. Ich habe hier oben Gleiche vergessen. Da kriegen wir. Also diese Felder, in denen wir Text bearbeiten können, werden Eintrag genannt und wir setzen einen Text gleich jetzt hier kommt eine erweiterte Version aus Bindung. Was wir tun werden, ist zwei Möglichkeiten zu binden, die ich meine geschweiften Klammern öffnen und schließen werde und innerhalb dieser, werde ich die übliche Bindung eingeben, die wir sehen würden Titel. Und dann werde ich Komma setzen. Und im nächsten Abschnitt werde ich ihm einen Modus geben. Einige Modus ist gleich zwei Weg jetzt. Dies bedeutet, dass, wenn ich einen meiner Werte in meiner Codebasis dahinter ändere, es sich auf dem Bildschirm ändern wird. Wenn ich es auf dem Bildschirm ändere, wird es auch in der Codebasis dahinter ändern. Also sind sie synchronisiert. Wenn du magst. Dann müssen wir diesem einige horizontale Optionen geben. Und wieder zentrieren und erweitern. Aber das könnte alles sein, was du magst. Ich würde raten, einfach mit Leichtigkeit zu experimentieren und zu sehen, was funktioniert. Und dann brauchen wir etwas Textfarbe. Und wir müssen das gerade grün machen und deinen Tag abschließen. Dann müssen wir genau das gleiche mit unserem Inhalt Text tun, so unten, dass ich es gerade kopiert habe . Ich werde meine Bindung an den Inhaltsmodus ändern, um eine Mitte erweitern Textfarbe grün. - Das ist in Ordnung. Das ist perfekt. Wir brauchen ein letztes Element und es gibt eine Schaltfläche, um dies zu speichern. Also das ist Button und wir brauchen etwas Text für den Button , der wirklich offensichtlich ist speichern. Und dann brauchen wir ein angeklicktes Ereignis und wir werden es auf Speichern übergeben. Und wir werden diese Methode in unserem Code hinter und schließlich Textfarbe erstellen, um sicherzustellen , dass sie nicht mit irgendetwas gleich grün kollidiert und dieses Tag abschließt. Okay, jetzt werde ich, äh, bearbeiten Seite wurde in der nächsten Vorlesung erstellt. Wir schauen uns den Code dahinter und drinnen an. Wir werden uns ansehen, wie wir diese zwei Wege finden 27. Speichern der bestellten Aufgabe in die Datenbank: in dieser Vorlesung speichern wir unsere bearbeitete Aufgabe in der Datenbank. Nun, der erste Schritt darin ist tatsächlich zu unserer Datenbankdatei in unserer PCL kommen und hier eine Methode hinzufügen , um Dinge zu bearbeiten. Und die Methode, die wir hinzufügen, ist öffentlich Editierelement zu vermeiden. Und dann, natürlich, werden wir es ein to do Listenelement namens Item übergeben. Und hier drinnen werden wir eine einfache Verbindung haben. Dot-Update darüber, was Update tut, ist es, dass es dieses Element findet, mit dem ich das primäre i d d und es mit den neuen Daten aktualisiere. Also übergeben wir es den Gegenstand. Okay, schließen Sie einfach die Datenbankdatei. Also drinnen sind auf Speichern. Wir wollen es weitergeben. Aber wir natürlich nicht weitergeben, wollen es natürlich nicht weitergeben,wenn ein leerer Text drin ist. Und um das zu umgehen, müssen wir einen Scheck durchführen. Also oberhalb dieser beim Speichern, lassen Sie uns eine neue Methode public erstellen, und dies wird ein Boolean ein true oder false zurückgeben, und es wird Check-Name sein und die Methode erstellen. Dann geben wir ein, wenn der String-Punkt nicht oder leer ist und dann müssen wir ihm die eigentliche Zeichenfolge geben. Das ist also unser Modellpunkt-Titel. Und dann, wenn es leer ist, sollten wir den Benutzer sagen und ihnen eine Warnung se Anzeige Alarm als eine Ära und dann Alarm möchte eine Nachricht. Also sagen wir, Titel kann nicht leer sein und dann fragt es nach einem Tastentitel, was in Ordnung ist, okay. Und dann müssen wir false zurückgeben, weil die Überprüfung fehlgeschlagen ist und schließen, dass, wenn und dann, wenn die Überprüfung nicht durchläuft und die Zeichenfolge nicht nein oder leer ist, dann geben wir einfach true zurück. Also wissen wir, dass es uns gut geht. Und dann hier unten, in unserer eigenen Speichermethode, werden wir diesen Scheck verwenden. Wir werden sagen, wenn nicht die Namensrückgabe überprüfen. Also, wenn check name falsch ist, dann zurück, weil wir nichts speichern wollen. Aber wenn es nicht falsch ist, werden wir diese Methode weiter durchlaufen. Und das bedeutet, dass wir unsere Datenbank speichern müssen, ein neues Datenbank-Punkt-Editierelement , und dann übergeben wir es das Modell. Nun, das ist anders, denn in den älteren Versionen von Samrin ohne Lachsformen müssten Sie lieber gehen und den Wert von der tatsächlichen Ansicht erhalten , ,die Sie offen haben. Aber weil wir eine Zwei-Wege-Bindung haben, wird der Wert automatisch hier jedes Mal eingefügt, wenn er geändert wird. Das ist ziemlich praktisch, dann, nachdem wir es gespeichert haben, wollen wir diesen Bildschirm loswerden und zum vorherigen zurückkehren. Also Navigationspunkt Pop ein Think, und das springt einfach das aktuelle Ding aus dem Stapel. Also lassen Sie uns spielen und sie sollten bauen. Und wenn ich auf ein Element klicke, kann ich es bearbeiten. Da gehen wir und ich werde es bearbeiten. Ich werde sagen, dass ich meine Beschreibung ändern werde. Ich werde nur sagen, so bearbeitet, ich werde Speichern drücken, und das sollte in der Datenbank gespeichert werden. Aber du wirst bemerken, dass es hier nicht auftaucht. Das liegt daran, dass wir es irgendwie auffrischen müssen. Also schlage ich zweimal nach Hause, wische es ab und führe es dann wieder aus, und es sollte diese Aufgabe finden. Dort wird es bearbeitet. Also haben wir hier in Samarie eine letzte Sache zu tun, und das ist, dass wir jedes Mal, wenn wir auf unsere Hauptseite zurückkommen, diese neue Version aus der Datenbank herausziehen , und das ist wirklich einfach zu tun. Öffnen Sie unsere Hauptseite Hund Zamel dot CS, und Sie werden feststellen, hier haben wir eine Liste feudal Artikel Quelle gesetzt und dies wird nur ausgelöst, wenn die Hauptseiten zum ersten Mal erstellt. Es ist nie wieder gefeuert. So eindeutig möchten wir das irgendwo verschieben, dass er jedes Mal gefeuert wird, wenn die Seite erscheint oder aktualisiert wird oder so etwas. Um das zu tun, können wir etwas außer Kraft setzen. Und Sie können damit vertraut sein. Wenn Sie wissen, dass ich auch Android und wir werden diese Methode auf Erscheinen so weiter außer Kraft setzen. Das Erscheinen wird jedes Mal ausgelöst, wenn eine Ansicht erneut angezeigt wird. Wenn Sie also andere View-Controller oder Aktivitäten darauf setzen und sie dann entfernen, wird diese Methode ausgelöst. Und alles, was wir tun müssen, ist, diese Zeile in die Quellzeile zu nehmen und sie dort einzufügen. Wenn wir das jetzt jedes Mal spielen, wenn diese Ansicht wieder erscheint, sollte sich der Text geändert haben. Also, wenn ich Aufgabe zu drücken und ich gehe zu bearbeitet und ich einfach meinen Namen in und drücken Speichern, da gehen wir, es wird aktualisiert. Okay, es gibt nur einen kleinen Grip, den ich mit dieser App habe und derzeit diese Felder auf die aktuelle Aufgabe angepasst . Und wenn ich etwas wirklich langes schreiben sollte, geht es irgendwie aus dir raus. Das werde ich jetzt nicht reparieren. Ich werde das für dich als ein bisschen Hausaufgaben festlegen. Also möchte ich, dass du mit dem Zamel-Abschnitt hier herumspielst. Wenn ich also das Laufen aufhöre und wir gehen, um die Seite irgendwo hier unter diesen Optionen zu bearbeiten , wird es eine Möglichkeit geben, das zu erweitern, um die volle Breite vom Bildschirm zu nehmen. 28. Ein kurzer Rückschnitt von allem, was du gelernt hast: Also, Leute, wir haben das Ende dieses Kurses erreicht und ich werde nur ein paar Dinge zusammenfassen, die gelernt habt. Also erinnerst du dich an sie? Das allererste, was wir uns Waas angeschaut haben. Wie ist Amarin Formen? APS sollte architekturiert werden, und wir gingen über das M V V M Paradigma. Nun, im Idealfall, das ist, wie Sie Dinge mit MPV em ausführen wollen Wenn es um Sammer informiert, dann haben wir einen schnellen Start Hallo Welt erstellt, die klassische hallo Welt, um eine Idee zu bekommen und ein Gefühl aus, was los ist mit tragbare Klassenbibliotheken und einzelne Produkte Projekte. Vielmehr haben wir etwas mehr in der Tiefe erstellt, als es nur mal eins zu tun, und drinnen schauten wir uns an, wie wir unsere Zamel-Ansichten ändern können. Also, wenn ich es einfach öffne, haben wir uns angesehen, wie man Eingabefelder hat und Dinge speichert, um Speicher über die Schuppen-Präferenzen zu speichern, die auf jeder Plattform verfügbar sind. Endlich sahen wir uns den Großvater aus dem Einkaufszentrum an. Tun Sie es einfach X 10, wo wir gelernt haben, wie man eine Liste erstellt, und in dieser Liste haben wir sie mit Elementen aus Sq-Light-Datenbanken gefüllt. Wir haben auch untersucht, wie Variablen auf zwei Arten innerhalb unserer Wraps gebunden werden können. Jedes Mal, wenn ich etwas in einem Textfeld ändere, ändert es sich automatisch in der Variablen im Code dahinter. Und das ist, wo das M V V M View-Modell beginnt, wirklich nützlich zu sein. Wir haben uns auch die vorherige App angesehen, wie Google Ameisen zu installieren, weil , schließlich, Sie für Ihre harte Arbeit bezahlt werden wollen, nicht wahr, Chef? Wir haben auch untersucht, wie man einen neuen View-Controller oder eine neue Aktivität von einem anderen auslöst. In Ordnung, das ist die Zusammenfassung abgeschlossen. Begleiten Sie mich in der letzten Vorlesung, wo ich einen besonderen Bonus nur für Sie habe.