Android Calligraphy Kütüphanesi ile Font Değiştirme

Bundan önce ki yazımız da Java içerisinde tek tek “TextView” üzerinde font değiştirmeye bakmıştık. Bunu yapmak için “Assets” klasörü oluşturmaya bakmıştık. Bu yazımızda “Assets” klasörü oluşturma kısmını atlayacağım. Dilerseniz buradan inceleyebilirsiniz. Bu yazımızda ise “Calligraphy” kütüphanesi ile uygulamamızda varsayılan yazı tipini ve XML içerisinde font değiştirmeye bakacağız.
Okumaya devam et Android Calligraphy Kütüphanesi ile Font Değiştirme

Android Snackbar

Bu gün Android Material Design ile birlikte gelen “Snackbar” yapısından bahsedeceğiz. “Snackbar” yapısı ekranın en altında kullanıcıya bilgi vermek için veya kullanıcı ile etkileşime geçmek için kullanılabilir.
Gradle Ekleme
Öncelikle “app” içerisinde ki “build.gradle” dosyası içerisine gerekli olan “Android Design” kütüphanesini ekleyelim.
Okumaya devam et Android Snackbar

Android Studio ile Kütüphane Oluşturma ve Yayınlama

Merhaba, bu yazımda Android üzerinde kütüphane olacak şekilde proje oluşturup bunu github üzerinde paylaşarak diğer kişilerin kullanımına sunacağız.
1 – Projeye Kütüphane Eklenmesi
Daha önceden bir Android Studio üzerinde proje olduğunu göz önüne alarak başlayacağım. File -> New -> New Module yolunu izleyerek yeni modül ekleme ekranını açıyoruz. Buradan “Android Library” seçeceğiz.image-1
Seçtikten sonra, kütüphaneye bir isim vermemiz isteniyor. “Library” diyerek devam ediyorum. Daha sonra paket ismini değiştirdim. Son olarak “Finish” diyerek oluşturuyoruz.
image-2
İşlem tamamlandıktan sonra, bir Android projesine benzer şekilde proje dizinin de görünecek.
image-3
2 – Layout Dosyası Eklenmesi
“library” dizini altında “res” klasörüne sağ tıklayarak New -> XML -> Layout XML File yolunu izliyoruz. Buradan “test_view” diyerek oluşturdum. 2 Adet “TextView” ekliyorum.
image-4
3 – Java Dosyası Eklenmesi
“library” dizini altında “java” -> paket ismine sağ tıklayarak New -> Java Class diyoruz. “TestView” ismini vererek oluşturdum. Burada XML içerisinde kullandığımız LinearLayout sınıfını extend etmemiz gerekiyor. Bu durumda yeni metotları eklememizi istemekte ve ekliyoruz.
Oluşturmuş olduğumuz XML dosyasını burada tanımlamamız gerekmekte. Bunun için “definition” isminde metot yazıyorum ve “inflate” metodunu çağırıyoruz. Daha sonra oluşturduğumuz her “constructor” metotları içerisinden bu metodumuzu çağırıyoruz.
image-5
Kütüphane kısmı burada bitiyor. Artık bu oluşturduğumuz kütüphaneyi projemizde kullanma kısmına geçiyoruz.
4 – Kütüphaneyi Ekleme
Öncelikle kütüphaneyi projeye dahil etmemiz gerekmekte. Bunun için “app” içerisinde bulunan “build.gradle” içerisine eklememiz gerekmekte. “dependencies” altına
compile project(“:library”)
yapısını ekliyoruz.
image-6
5 – Kütüphaneyi Kullanma
Burada iki ayrı şekilde ekleyebiliriz. Birincisi, XML içerisinde “TestView” yapısını kullanarak; ikincisi ise Java içerisinde “TestView” yapısını kullanarak.
Ben XML içerisinde dahil ettim. Burada direk Java sınıfının yolu ile ekleyebiliyoruz.
image-7
Buraya kadar kütüphaneyi oluşturduk ve kendimiz kullandık. Artık yayınlama kısmına geçelim.
6 – Projeyi Yayınlama
Proje yayınlama kısmında jitpack.io ve github kullanacağız.
6 – 1 Gradle Güncelleme
Gradle-wrapper.proporties içerisinde gradle versiyonu bulunmakta. Jitpack.io en az v3.0 istemekte. Güncel sürümleri http://services.gradle.org/distributions/ üzerinden takip edebilirsiniz. Ben 3.1 –all kullandım.
6 – 2 Root Gradle İşlemleri
buildscript -> dependencies içerisine

ekliyoruz.

image-8
6 – 3 Kütüphane Gradle İşlemleri
Yukarıda verdiğimiz “library” isminin içerisinde bulunan gradle dosyasını açalım ve eklemeleri yapalım. (kbakacak yerine sizin Github hesap kullanıcı adınız.)

image-9

6 – 4 Github ‘a Yollama
Son olarak Github üzerinden projeyi paylaşacağız. Github içerisinde yeni bir proje oluşturup yollayınız. Ben GradleExample oluşturdum. Daha sonra yine Github içerisinde projeyi “release” yapmamız gerekiyor. Orada kullanılacak tag numarası önemli. Her hangi bir sorun olmazsa,
com.github.UserName:ProjectName:Tag
şeklinde kullanabilirsiniz. Benim oluşturduğum gradle linki.

6 – 5 Gradle ile İndirme
Peki kullanıcılar bu dosyayı nasıl indirecekler? Bunun için gradle dosyalarının içerisine allprojects -> repositories altına

eklenmeli ve daha sonra yukarıda oluşan gradle linkini “dependencies” içerisine kopyalayarak kullanabilirler.

Ek Bilgi
Ben oluştururken kullanmış olduğum bir tane gradle dosyasında sorun oluştu. Sizde de böyle bir şey olabilir. Bunu takip etmek için altta ki yapıyı kullanabilirsiniz.
https://jitpack.io/com/github/kbakacak/GradleExample/1.0.2/build.log
https://jitpack.io/com/github/UserName/ProjectName/Tag/build.log
Altta da almış olduğum hata. Tag 1.0.1 üzerinde.
image-10
Küçük bir kaynakça;
https://jitpack.io/docs/
https://github.com/blog/1547-release-your-software
Projeye, Github üzerinden ulaşabilirsiniz.
Umarım yardımcı olur, görüşmek üzere.