Sebuah aplikasi Android terdiri lebih dari sekedar kode, aplikasi ini juga membutuhkan sumber daya yang terpisah dari source code, seperti image, file audio, dan apapun yang berhubungan dengan presentasi visual dari aplikasi. Sebagai contoh, kita harus mendefinisikan animasi, menu, style, warna, dan layout dari user interface activity dengan file XML. Dengan menggunakan sumber daya aplikasi, kita jadi mudah mengupdate bermacam-macam karakteristik dari aplikasi tanpa memodifikasi kode. Dan dengan menyediakan sumber daya alternatif, kita bisa mengoptimalkan aplikasi untuk variasi pengaturan perangkat (misalnya perbedaan bahasa dan ukuran layar).
Untuk setiap sumber daya yang kita masukan dalam project android, tools dari SDK akan memberikan ID yang unik. ID ini bisa kita gunakan untuk mereferensikan sumber daya tersebut dari kode aplikasi atau dari sumber daya yang lain yang telah didefinisikan di XML. Sebagai contoh, jika aplikasi kita mengandung sebuah file image dengan nama logo.png (simpan di directory res/drawable/), tool SDK akan membuat ID untuk sumber daya dengan nama R.drawable.logo yang bisa kita gunakan untuk mereferensikan image tersebut dan memasukannya kedalam user interface.Salah satu aspek yang paling penting ketika menyediakan sumber daya terpisah dari source code adalah kemampuan bagi kita untuk menyediakan sumber daya alternatif untuk konfigurasi perangkat yang berbeda. Sebagai contoh, dengan mendefinisikan string user interface di XML, kita bisa menterjemahkan string tersebut ke dalam bahasa lain dan menyimpan string itu di file yang terpisah. Kemudian, berdasarkan pemilih bahasa yang kita terapkan ke nama direktori sumber daya (misalnya res/values-fr/ untuk string berbahasa Perancis) dan setting bahasa dari user. Sistem Android kemudian menerapkan string yang sesuai dengan bahasa pada UI aplikasi kita.
Android mendukung bermacam-macam pembatas yang berbeda untuk alternatif sumber daya. Pembatas di sini adalah sebuah string pendek yang kita masukan dalam nama direktori sumber daya untuk mendefinisikan konfigurasi perangkat di mana sumber daya tersebut seharusnya digunakan. Contoh lain, seringkali kita harus membuat layout yang berbeda untuk setiap activity, bergantung dari orientasi dan ukuran layar pada perangkat. Contohnya, ketika orientasi layar pada perangkat adalah portrait (tinggi), mungkin kita ingin layout dengan button vertikal, tapi ketika orientasi layar menjadi landscape (lebar), seharusnya button terletak secara horizontal. Untuk merubah layout agar bergantung pada orientasi layar, kita bisa mendefinisikan dua layout yang berbeda dan menerapkan pembatas yang sesuai untuk setiap nama direktori layout. Kemudian sistem akan secara otomatis menerapkan layout yang sesuai dengan orientasi layar pada perangkat.
Tweet
Tidak ada komentar:
Posting Komentar