Aangepaste lettertypen toevoegen - Android en iOS - Swift

Dus ik ben een Android-ontwikkelaar, punt uit. Ik ontwikkel al jarenlang applicaties voor de Android-platforms. Ik heb genoten van de verschillende projecten waaraan ik heb gewerkt en het is gewoon leuk om dingen te doen met de technologie die je zo goed kent.

Maar ik wilde nu al een tijdje Swift leren en een paar maanden geleden heb ik eindelijk de sprong gewaagd. Een van de eerste dingen die ik ontdekte, was dat de leercurve behoorlijk diep was, of het nu ging van Android Studio naar Xcode of het gebruik van storyboards in tegenstelling tot XML-stijlcodering in Android.

Dus ik wilde enkele van mijn hindernissen die ik tegenkwam delen, in de hoop dat mensen die dezelfde problemen tegenkomen, dit heel nuttig zouden vinden.

Dus een van de eerste dingen die ik doe bij het starten van een nieuw project in Android, is het toevoegen van enkele nieuwe lettertypen.

In Android kopieert u uw lettertypen naar de activamap in het project. Standaard bevindt de map met activa zich in de hoofdmap van uw project -> app -> src -> main

Android - map met activamappen

Opmerking: als er geen activamap is gemaakt, kunt u gewoon een map onder de hoofdmap toevoegen en uw lettertypen in de activamap opnemen.

Om dit lettertype in uw app te gebruiken, hoeft u alleen maar 2 regels code te schrijven:

Typeface myTypeFace = Typeface.createFromAsset (getContext (). GetAssets (), "circular_medium.otf");
setTypeface (myTypeFace);

Of, als je bent zoals ik en niet echt de bovenstaande code wilt schrijven naar alle 50 van je textiews, of editTexts, kun je deze link gebruiken om je leven gemakkelijker te maken. (Het is een wrapper-klasse die ik heb geschreven om lettertypen rechtstreeks aan uw xml-bestand toe te voegen)

En dat is het! U hebt uw lettertype toegevoegd aan uw Android-app.

In iOS daarentegen raad ik aan dat alles wordt toegevoegd via de Xcode IDE.

Dus stap 1: u moet eerst uw lettertypen naar uw projectmap slepen en neerzetten.

Zorg ervoor dat u het lettertype onder de projectmap toevoegt

Dit opent de onderstaande prompt:

Stap 2: Zorg ervoor dat de optie Toevoegen aan doelen is aangevinkt zoals hierboven wordt getoond, de items Kopiëren indien nodig is aangevinkt.

Nu is uw lettertype toegevoegd aan het project. Om het te kunnen gebruiken, moeten we het nu aangeven.

Stap 3: Open het bestand info.plist, klik met de rechtermuisknop en selecteer Rij toevoegen:

Selecteer in de rij lettertypen die per toepassing zijn toegevoegd.

Ik heb handmatig circular_book.otf getypt

Zorg ervoor dat de naam die u opgeeft overeenkomt met de naam van het lettertypebestand.

Stap 4: Voer een snelle controle uit, staan ​​uw lettertypen in Build Phases -> Bundle Resources?

De lettertypen worden toegevoegd aan de bouwfasen

Stap 5: Het lettertype wordt toegevoegd aan uw project. Nu om het te gebruiken!

U kunt een kenmerk toevoegen aan een knop, label of tekstveld

Zoek in je storyboard het lettertype met behulp van het vervolgkeuzemenu.

Als u het programmatisch vanuit uw code wilt gebruiken:

Eerst moet u de naam van het lettertype weten. Zoals Apple suggereert, kan de naam van het lettertype iets heel anders zijn dan de naam van het bestand.

Dus voeg de onderstaande code toe om alle lettertypenamen af ​​te drukken:

voor familie in UIFont.familyNames.sorted () {
    let names = UIFont.fontNames (forFamilyName: family)
    print ("Familie: \ (familie) Lettertypenamen: \ (namen)")
}

Zodra u de naam van het lettertype weet, kunt u gewoon bellen:

// Voor knop:
button.titleLabel? .font = UIFont (naam: "Circular-Book", maat: 20)
// Voor labels:
label.font = UIFont (naam: "Circular-Book", maat: 20)

En dat is het!

Aangepaste lettertypeafbeelding in Android

Ik hoop dat dit nuttig was!