Mit if command Seite der App wechseln

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Mit if command Seite der App wechseln

    Hallo zusammen,
    ich würde gerne Wissen wie man den Inhalt eines Textfeldes in einen String umwandeln kann. Ich hatte es bereits mit diesem Code versucht:

    Quellcode

    1. NSString string = textfeld.text
    ( "string" sheißt der String und "Textfeld" heißt das Textfeld)

    leider hat es damit nicht funktioniert...

    Muss ich vielleicht vorher noch irgendwas beachten damit ich diesen Code benutzen kann?

    LG
  • Ich verstehe deine Frage nicht. Das hat doch mit SwiftUI nix zu tun. Das ist doch irgend was anderes.

    Eine Contentview mit speichern und Textfeld, könnt in SwiftUI bspw aussehen:

    Quellcode

    1. struct ContentView: View {
    2. @AppStorage("username") var username: String = "Anonymous"
    3. var body: some View {
    4. Form{
    5. TextField("Enter your name", text: $username)
    6. Text("Hello, \(username)!")
    7. }
    8. }
    9. }
  • manoh schrieb:

    Bekommst Du eine Fehlermeldung bzw. meckert der Compiler?

    Wolltest Du nicht in Swift programmieren? Oder jetzt doch Obj-C?
    Genau ich bekomme eine Fehlermeldung...

    Ja ich wollte in SwiftUI programmieren. Aber ich finde für den Anfang Obj-C besser da man auch mehr Anleitungen (wenn man z.B was spezielles sucht ) im Internet findet. Außerdem finde ich das Designen in der Storyboard Datei deutlich einfacher für den Anfang...

    Wolf schrieb:

    Ich verstehe deine Frage nicht. Das hat doch mit SwiftUI nix zu tun. Das ist doch irgend was anderes.

    Das ist richtig das ist für Obj-C...
  • Gongkikong schrieb:

    Vielleicht kann mir da ja einer weiterhelfen...wahrscheinlich ist es irgendein Anfänger Fehler. 8|
    Statements müssen in Objective C mit einem Semikolon beendet werden ... das gilt nicht nur für die von mir geschriebene Zeile :) Aber auch der Rest Deines Codes sieht nach einer kruden Mischung aus Swift und Objective C aus. Du musst Dich schon entscheiden.

    Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.
  • Mmmmmh ok bei den Tutorials die ich geschaut hatte war es glaube ich Swift… ich steige da noch nicht so ganz durch …

    Da ich ja Storyboard ausgewählt habe ging nur Obj-C deswegen habe ich mir dabei erstmal nichts gedacht und die Tutorials du ich geschaut hatte hatte der immer von Swift gesprochen… waren allerdings auch 3 Jahre alt…
  • Gongkikong schrieb:

    Da ich ja Storyboard ausgewählt habe ging nur Obj-C deswegen habe ich mir dabei erstmal nichts gedacht...
    Da täuschst Du Dich: Du kannst durchaus das User-Interface mit einem Storyboard entwickeln und in Swift programmieren. Das dürfte für Dich die bessere Kombination sein: Ich würde als Neuling nicht mehr in Objective-C einsteigen, da reitest Du einen toten Gaul. Bzgl. SwiftUI vs. Interface Builder wage ich keine Aussage, dafür kenne ich mich mit SwiftUI zu wenig aus ... kann mir aber gut vorstellen, dass (tiefgehende) Tutorials noch Mangelware sind.

    Also: Ich würde ein storyboard-basiertes Projekt mit Swift nutzen. Dann solltest Du bei der String-Zuweisung aber m. E. keine NSString-Objekt verwenden (das eigentlich ein Pointer ist und daher ein "*" benötigt, damit dessen Objekt und nicht die Adresse verwendet wird), sondern das Swift-Struct String benutzen... Falsch ist beides nicht, aber ein NSString ohne Dereferenzieren hiesse, die Speicheradresse des NSStrings zu überschreiben. Glaub' mir, das willst Du nicht :)

    Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.
  • Ok das hört sich schon einmal ganz gut an...

    Ich hätte dann noch zwei fragen:

    1. Wo könnte ich auslesen welche Programmiersprache (also Obj-C oder Swift) ich am Anfang ausgewählt habe? bin mir nun auch nicht mehr ganz sicher...

    2. Auf der verlinkten Website von Apple habe ich jetzt nicht genau etwas zu den Umwandeln von eine Textfeld gefunden... Habe ich etwas übersehen oder denke ich zu kompliziert?



    Ich hatte jetzt mal diesen Code genutzt:



    Quellcode

    1. var benutzername: String = "textfeld.text"

    Eine Fehlermeldung gab es nicht





    Edit:
    Ein Frage hätte ich noch:
    Und zwar was wäre der code zum Wechseln der App-Seite?

    Ich hatte die Seite bei gedrückter strg taste in das Codefeld gezogen. Da kam dann dieser Code raus:



    Quellcode

    1. func zuTischauswahl(_ coder: NSCoder) -> UIViewController? {
    2. return <#UIViewController(coder: coder)#>

    Allerdings weiß ich nicht was in diesen Platzhalter nach return reinkommen muss. Oder Nimmt man zum Seitenwechsel einen anderen Command?




    Edit 2.0:

    Checke gerade das der Code den ich oben habe nicht funktionieren kann weil dieser einfach nur den text "Textfeld.text" beinhaltet...

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Gongkikong ()

  • Ich hatte auch schon die Grundlagen (zumindest vom Code her) über den Kanal Martin Lexow kennen gelernt. Allerdings war das alles immer im Playground und deswegen wurde sowas wie Textfelder leider nie behandelt...

    Ich werde mir zumindest nochmal die Website die @OSXDev verlinkt hatte nochmals anschauen. Vielleicht hilft mir das zumindest bei den anderen Problemen weiter (die sieht auf jedenfalls recht gut erklärt aus).

    Vielen Dank nochmal!
  • Es hat mir tatsächlich weitergeholfen!! konnte nun das ursprüngliche Problem lösen. Danke!

    Allerdings hätte ich eine Frage wozu ich im Internet nichts gefunden hatte. Und zwar möchte ich mit einem if command, die Seite der App wechseln.
    z.B. so:

    Quellcode

    1. if textfeld.text == "wort" }
    2. (command zum Seitenwechsel)
    3. }


    Kann mir dabei jemand weiterhelfen? ich hatte da jetzt schon einige Stunden recherchiert aber nichts gefunden...
  • Gongkikong schrieb:

    Kann mir dabei jemand weiterhelfen?
    Vielleicht, aber dafür müsstest Du erläutern, was genau für Dich "Seite wechseln" ist...

    Ich vermute, Du möchtest von einem ViewController auf einen anderen wechseln. Dafür gibt es (neben eigenen Implementierungen) so Standardverfahren wie Pushen auf einen Navigationstack (UINavigationController) oder Blättern im Rahmen eines UIPageViewControllers.

    Schau Dir die genannten Klassen mal an - eine gute Quelle hierzu sind die Human Interface Guidelines. Dann hast Du (mit entsprechenden Termini) auch eine Chance, etwas im Netz zu finden oder hier Hilfe zu bekommen.

    Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.
  • @MyMattes @Wolf: Gute Hinweise.

    @Gongkikong ich denke die Hinweise der Beiden s.o. sind für Dich eventuell schwierig umzusetzen. Besser ist es Dich erst einmal vollständig mit Swift vertraut zu machen bevor es in die Tiefen geht. Hier ist ein gute Quelle für die Einarbeitung Swiftkurs. Kann auch als Nachschlagewerk zu einzelnen Themen genutzt werden.

    Du solltest wie es @MyMattes bereits geschrieben hat, etwas mehr Informationen in Deinen Anfragen mitteilen, dann kann Dir gezielter gehoffen werden. Als Anfänger ist es schwierig die richtigen Begrifflichkeit zur Hand zu haben, deshalb vielleicht auch mal darüber nachdenken ob ein Buch Dich Deinem Vorhaben näher bringt. Generell nicht aufgeben, uns geht es hier hin und wieder auch so, dass wir die Herausforderung beschreiben können, jedoch manchmal auch nicht die richtige Begrifflichkeit des Apple-Universums zur Hand haben. Die meisten Antworten bringen einen jedoch auf die richtige Spur.

    Muss an dieser Stelle einfach mal - in eigener Sache - die Gelegenheit wahrnehmen und allen hier im Forum ein Lob aussprechen. Vielen Dank und bitte weiter so. :thumbsup: