Zufällige Schriftart auswählen

  • Zufällige Schriftart auswählen

    Hallo Leute,

    gibt es in Objective C die Möglichkeit (vielleicht iwie unter mithilfe eines Random Number Generators) nach Klick auf einen Button
    die Schriftart eines Textes in einem Textfeld in eine zufällige Schriftart zu ändern?
    (Natürlich ohne die Schriftarten vorher in einem Array aufzählen zu müssen)


    Grüße
    Descan
  • Ich habe das Problem soeben selbst gelöst.
    Für alle die vor einem ähnlichen Problem stehen hier mein Lösungsvorschlag:

    Quellcode

    1. //Erzeugen eines NSArray und füllen mit allen im System vorhandenen Font-Familiennamen
    2. NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]];
    3. //Zufällige Nummer generieren, die sich im Bereich der Anzahl der Font-Familien befindet (Danke Kaboom)
    4. int r = rand() % familyNames.count;
    5. //Erzeugen eines Strings und füllen mit einem Eintrag aus dem Font-Family Array
    6. NSString *name = [[NSString alloc] init];
    7. name = [familyNames objectAtIndex:r];
    8. //Ändern der Schriftart des UITextViews "textFeld"
    9. textFeld.font = [UIFont fontWithName:name size:20];
    10. //Freigeben des Speicherplatzes
    11. [familyNames release];
    Alles anzeigen


    Viel Spaß damit! :)
  • Amin Negm-Awad schrieb:

    Thallius schrieb:

    Und der Code hat ein Leak.

    Gruß

    Claus

    Vor allem eines der ganz unnützen Sorte. (Okay, es gibt wohl auch keine nützlichen Leaks.)

    Diese vollkommen sinnfreie Anweisung sieht man ja schon mal häufiger. Ich frage mich, was der Ursprung dafür ist. Wahrscheinlich irgendein tolles Tut auf DuRöhre.
    „Meine Komplikation hatte eine Komplikation.“
  • Ich will es jetzt nicht beschwören, aber ich glaube das findet man sogar bei einem SampleCode aus den Developer Center.

    Also nicht mit

    NSString *string=[[NSString alloc] int];

    aber oft mit

    NSString *string=[NSString alloc] initWithFormat:@"Hallo"];

    was ja eigentlich sogar noch schlimmer ist und bei XCode 4, bei meinen ersten Projecten, zu ganz vielen Warnings geführt hat, da es mitlerweile auf ein initWithString pocht wenn man kein wirkliches Format angibt.

    Und ich habe eigentlich alles aus den Apple-Docs und SampleCodes, da ich es total bescheuert finde mir Anleitungen als Video anzusehen.

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)
  • Thallius schrieb:

    Ich will es jetzt nicht beschwören, aber ich glaube das findet man sogar bei einem SampleCode aus den Developer Center.

    Also nicht mit

    NSString *string=[[NSString alloc] int];

    aber oft mit

    NSString *string=[NSString alloc] initWithFormat:@"Hallo"];

    was ja eigentlich sogar noch schlimmer ist und bei XCode 4, bei meinen ersten Projecten, zu ganz vielen Warnings geführt hat, da es mitlerweile auf ein initWithString pocht wenn man kein wirkliches Format angibt.

    Und ich habe eigentlich alles aus den Apple-Docs und SampleCodes, da ich es total bescheuert finde mir Anleitungen als Video anzusehen.

    Gruß

    Claus


    copy&paste aus vids ist auch nicht so einfach ;)

    ich finde videos auch nicht so prickelnd.
  • Ich verstehe den Sinn von Videos nicht.
    Wenn ich etwas lese, dann kann ich das Tempo bestimmen. Ich kann etwas 2 oder 3mal lesen wenn ich es nicht verstanden habe oder etwas überspringen wenn ich es schon kenne.
    Bei Videos muss ich dann vor- und zurückspulen und dabei versuchen die richtige Stelle zu treffen. Also das bringt doch gar nichts.

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)
  • Videos über Programmieren habe ich mir noch nie angeschaut.

    Aber über Mathe kann das super funktionieren, siehe khanacademy.org/
    Halt wie ein sehr guter Lehrer, nur dass man halt keine Fragen stellen kann. Ist aber nicht schlimm, schaut man dann im Nachhinein sich nochmal genauer an wenn man an einer Stelle noch unsicher ist.
    Ich hatte auch mal ein paar MIT Mathe-Vorlesungen im Netz angeschaut und war auch sehr überrascht, wie gut das geht.

    Also denke ich, dass es für den ein oder anderen auch bei Programmier-Themen sehr gut funktionieren kann.
    C++
  • macmoonshine schrieb:

    Amin Negm-Awad schrieb:

    Thallius schrieb:

    Und der Code hat ein Leak.

    Gruß

    Claus

    Vor allem eines der ganz unnützen Sorte. (Okay, es gibt wohl auch keine nützlichen Leaks.)

    Diese vollkommen sinnfreie Anweisung sieht man ja schon mal häufiger. Ich frage mich, was der Ursprung dafür ist. Wahrscheinlich irgendein tolles Tut auf DuRöhre.

    Der Hintergrund ist wohl, dass man nicht zwischen ID und Objekt unterscheidet. Das findet sich aber auch hier immer wieder, wenn auch subtiler. Schau dirmal den Kommentar an:
    //Erzeugen eines Strings und füllen mit einem Eintrag aus dem Font-Family Array
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • macmoonshine schrieb:

    gritsch schrieb:

    ich finde videos auch nicht so prickelnd.

    Für den Anfänger sind sie vielleicht ganz hilfreich, wenn sie keinen Schwachsinn verbreiten. Auf die Dauer kommt man aber um die Doku und Grundlagen nicht drumherum. Aber da sind wir uns sicherlich einig ;)

    Ehrlich gesagt, kann ich das nicht nachvollziehen. Gelesenes verinnerlicht man ganz sicher besser als Gehörtes. Zurückblättern ist auch schwieriger und man kann nicht mal eben stehenbleiben, wenn man irgendwo Zweifel hat.

    Das einzige was dafür spricht: Man kann so auf leichte Weise keine Ahnung erwerben. Da ist der Schlupf halt geringer.
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Thallius schrieb:

    Ich verstehe den Sinn von Videos nicht.
    Wenn ich etwas lese, dann kann ich das Tempo bestimmen. Ich kann etwas 2 oder 3mal lesen wenn ich es nicht verstanden habe oder etwas überspringen wenn ich es schon kenne.
    Bei Videos muss ich dann vor- und zurückspulen und dabei versuchen die richtige Stelle zu treffen. Also das bringt doch gar nichts.

    Ein Anfänger muss sich häufig erst mal mit den Tools vertraut machen. Da ist es oft einfacher, sich so was in einem Video anzusehen. Sobald es aber um Frameworks & Co geht, ist Lesen angesagt. Das kommt aber leider immer mehr aus der Mode. :(
    „Meine Komplikation hatte eine Komplikation.“
  • Amin Negm-Awad schrieb:

    Der Hintergrund ist wohl, dass man nicht zwischen ID und Objekt unterscheidet. Das findet sich aber auch hier immer wieder, wenn auch subtiler. Schau dirmal den Kommentar an:
    //Erzeugen eines Strings und füllen mit einem Eintrag aus dem Font-Family Array

    Fang' jetzt nicht noch mit der Sinnhaftigkeit von bestimmten Kommentaren an. ;) // Eine Bemerkung, der ich nicht widerstehen konnte, auf ein Zitat von Amin

    ;) // Ein Emoticon

    +scnr+ // Keine Ahnung wozu das gut ist - habe ich so in einem YouToube-Tut gesehen
    „Meine Komplikation hatte eine Komplikation.“