Saat baru pindah dari HTML dan CSS ke Android, bagian yang sering bikin bingung adalah cara memanggil gambar, warna, dan nama aplikasi. Di web, kita biasa menulis path langsung seperti /image/logo.png. Di Android, cara berpikirnya berbeda. Android memakai sistem resource.
Resource adalah file yang diletakkan di folder app/src/main/res. Setelah file masuk ke sana, Android mengenal file itu lewat nama resource, bukan lewat path lengkap.
Judul aplikasi
Nama aplikasi biasanya disimpan di file app/src/main/res/values/strings.xml. Contohnya:
string name app_name berisi IT-Tude Self Attendance.
Di AndroidManifest.xml, nama itu dipanggil lewat android:label="@string/app_name". Artinya aplikasi mengambil teks dari resource string bernama app_name.
Kalau ingin mengganti judul aplikasi yang muncul di launcher, ubah nilai app_name di strings.xml.
Gambar bukan dipanggil seperti HTML
Kalau di web kita menulis src="/image/logo.png", di Android kita menaruh gambar ke folder resource. Misalnya file logo_baru.png diletakkan di app/src/main/res/drawable-nodpi.
Cara memanggilnya bukan dengan path folder, tetapi dengan nama resource:
@drawable/logo_baru
Walaupun file berada di drawable-nodpi, referensinya tetap @drawable/nama_file.
Folder yang sering dipakai
Folder values dipakai untuk data kecil seperti string dan warna. strings.xml dipanggil dengan @string/nama. colors.xml dipanggil dengan @color/nama.
Folder drawable dipakai untuk gambar, vector, shape, atau background XML.
Folder drawable-nodpi dipakai untuk gambar PNG yang tidak ingin otomatis diskalakan berdasarkan density layar.
Folder mipmap dipakai untuk launcher icon aplikasi. Android punya beberapa ukuran seperti mipmap-mdpi, mipmap-hdpi, mipmap-xhdpi, mipmap-xxhdpi, dan mipmap-xxxhdpi. Sistem akan memilih ukuran yang cocok untuk perangkat.
Adaptive icon
Android versi baru memakai adaptive icon. File utamanya biasanya ada di app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml.
Isinya memanggil background dan foreground. Contohnya, background putih bisa dipanggil dari @color/ic_launcher_background_white. Logo depan bisa dipanggil dari @drawable/ic_launcher_foreground_logo.
Jadi adaptive icon tidak harus satu gambar utuh. Ia bisa terdiri dari background dan foreground.
Rumus cepat
Jika file ada di values/strings.xml, panggil dengan @string/nama.
Jika warna ada di values/colors.xml, panggil dengan @color/nama.
Jika gambar ada di drawable atau drawable-nodpi, panggil dengan @drawable/nama_file.
Jika launcher icon ada di mipmap, panggil dengan @mipmap/nama_file.
Cara aman ganti logo sendiri
Untuk mengganti logo aplikasi, siapkan PNG yang bersih. Letakkan di app/src/main/res/drawable-nodpi. Contohnya logo_it_tude.png.
Lalu di adaptive icon, panggil:
@drawable/logo_it_tude
Untuk launcher icon lama, siapkan juga file di folder mipmap dengan nama ic_launcher.webp dan ic_launcher_round.webp pada setiap density.
Kesimpulannya sederhana: Android bukan membaca path seperti HTML. Android membaca resource. Setelah paham pola @string, @color, @drawable, dan @mipmap, mengganti judul aplikasi atau logo akan terasa jauh lebih masuk akal.

0 Komentar