Saya mencoba menggunakan Font Awesome pada aplikasi saya, saya dapat mengintegrasikan penggunaan font Typeface.createFromAsset()
, tetapi saya juga ingin menggunakan ikon yang disediakan oleh font ini, tetapi sejauh ini saya belum bisa melakukan itu.
Font khusus ini berisi ikon di dalam Unicode Private Use Area (PUA), untuk hal-hal seperti kontrol pemutar media, akses sistem file, panah, dll.
Adakah yang menggunakan font yang mengandung ikon dan simbol di Android, apakah ini mungkin?
android
font-awesome
Julian Suarez
sumber
sumber
Jawaban:
Font Awesome tampaknya berfungsi dengan baik untuk saya di aplikasi android saya. Saya melakukan yang berikut:
fontawesome-webfont.ttf
ke folder assests sayaMembuat entri di strings.xml untuk setiap ikon. Misalnya untuk hati:
Entri yang direferensikan dalam tampilan tata letak xml saya:
Memuat font dalam metode onCreate saya dan mengaturnya untuk Tampilan yang sesuai:
sumber
Hashtable
menggunakan kembali ikon jenis huruf Anda, seperti yang disarankan di sini: code.google.com/p/android/issues/detail?id=9904#c7strings.xml
seperti<string name="faicon"></string>
kemudian mengatur teks dalam kode saya, itu akan baik-baik saja. Tetapi ketika saya cobamTextView.setText("");
hanya menampilkan teks mentah. Adakah yang bisa membantu? thksCoba IcoMoon: http://icomoon.io
Katakanlah, Anda memilih ikon permainan, menetapkan huruf 'P' untuknya, dan mengunduh file
icomoon.ttf
ke folder aset Anda. Ini adalah bagaimana Anda menunjukkan ikon:xml:
Jawa:
Saya telah memberi ceramah tentang membuat aplikasi Android yang indah, yang mencakup penjelasan tentang cara menggunakan font ikon, ditambah menambahkan gradien untuk membuat ikon lebih cantik: http://www.sqisland.com/talks/beautiful-android
Penjelasan font ikon dimulai pada slide 34: http://www.sqisland.com/talks/beautiful-android/#34
sumber
Mungkin sudah terlambat tetapi saya memiliki kebutuhan yang sama jadi saya telah menerbitkan https://github.com/liltof/font-awsome-for-android Ini adalah versi android xml siap font yang dapat digunakan seperti kata Keith Corwin
Semoga ini bisa membantu orang lain.
sumber
Seperti di atas adalah contoh yang bagus dan bekerja sangat baik:
TAPI! > ini akan berfungsi jika tombol string di dalam Anda atur dari xml:
Jika Anda perlu menambahkannya secara dinamis dapat menggunakan ini:
sumber
Jika Anda ingin setText terprogram tanpa menambahkan string ke string.xml
lihat kode heksadesimalnya di sini:
http://fortawesome.github.io/Font-Awesome/cheatsheet/
ganti & # xf066; ke 0xf066
sumber
Ada perpustakaan kecil dan berguna yang dirancang untuk tujuan ini :
Dapatkan demo di Google Play .
Anda dapat dengan mudah menambahkan ikon berbasis font di tata letak Anda:
Anda dapat mengembang font-ikon
Drawable
sejak xml:Kode Java:
Tautan:
sumber
0.1.9
Saya membuat kelas pembantu ini dalam C # (Xamarin) untuk secara terprogram mengatur properti teks. Itu yang bekerja cukup baik untuk saya:
Seharusnya cukup mudah untuk mengkonversi ke Jawa, saya pikir. Semoga ini bisa membantu seseorang!
sumber
Salah satu perpustakaan yang saya gunakan untuk Font Awesome adalah ini:
https://github.com/Bearded-Hen/Android-Bootstrap
Secara khusus,
https://github.com/Bearded-Hen/Android-Bootstrap/wiki/Font-Awesome-Text
Dokumentasinya mudah dimengerti.
Pertama, tambahkan dependensi yang diperlukan di build.gradle:
Kedua, Anda dapat menambahkan ini dalam XML Anda:
tetapi pastikan Anda menambahkan ini di tata letak root Anda jika Anda ingin menggunakan contoh kode di atas:
sumber
Pustaka FontView memungkinkan Anda menggunakan karakter font normal / unicode sebagai ikon / grafik di aplikasi Anda. Itu dapat memuat font melalui aset atau lokasi jaringan.
Manfaat perpustakaan ini adalah:
https://github.com/shellum/fontView
Contoh:
Layout:
Java:
sumber
Ada solusi bagus lain yang dapat Anda gunakan dalam file xml layout Anda secara langsung dan tidak perlu digunakan
setTypeface
.Hal ini Joan Zapata Iconify . Anda dapat membaca di sini apa yang baru di Iconify v2 . Ini mencakup 9 pustaka font berbeda yang bisa Anda gunakan dengan menambahkan dependensi ke file build.gradle Anda .
Di file layout xml, Anda dapat memilih di antara widget ini:
sumber
Awalnya buat folder aset dan salin ikon fontawesome (.ttf) Bagaimana membuat folder aset?
langkah selanjutnya unduh cara mengunduh file .ttf? klik di sini -> dan klik tombol unduh setelah mengunduh ekstrak dan buka font web. akhirnya pilih true text style (ttf) paste folder aset.
bagaimana cara mendesain file xml dan java di android?
contoh ini satu lagi huruf Unicode klik di sini
Activity_main.xml
MainActivity.java
Keluaran:
Output gambar
sumber
Saya agak terlambat ke pesta, tetapi saya menulis tampilan khusus yang memungkinkan Anda melakukan ini, secara default diatur ke entypo, tetapi Anda dapat memodifikasinya untuk menggunakan sembarang ikon: periksa di sini: github.com/MarsVard/IconView
// edit perpustakaan sudah tua dan tidak didukung lagi ... yang baru di sini https://github.com/MarsVard/IonIconView
sumber
Jika Anda hanya membutuhkan beberapa ikon font yang mengagumkan, Anda juga dapat menggunakan http://fa2png.io untuk menghasilkan gambar piksel normal. Tetapi jika Anda menambahkan ikon / tombol baru secara teratur, saya akan merekomendasikan versi .ttf karena lebih fleksibel.
sumber
Jika seseorang bertanya-tanya bagaimana cara menambahkannya secara program, Anda harus melakukannya dengan cara ini.
sumber
Karena semua jawaban bagus tetapi saya tidak ingin menggunakan perpustakaan dan setiap solusi hanya dengan satu kode java membuat saya
Activities
danFragments
sangat berantakan. Jadi saya lebih menulisTextView
kelas sebagai berikut:yang harus Anda lakukan adalah menyalin
ttf
file font keassets
folder. Dan gunakan lembar cheat ini untuk menemukan setiap string ikon.semoga ini membantu.
sumber