Android Resources |
Tutorial ini akan menjelaskan kepada Anda bagaimana Anda dapat mengatur sumber daya aplikasi Anda, menentukan sumber daya alternatif dan mengaksesnya di aplikasi Anda.
Atur sumber daya di Android Studio
MyProject/ app/ manifest/ AndroidManifest.xml java/ MyActivity.java res/ drawable/ icon.png layout/ activity_main.xml info.xml values/ strings.xml
No. | Directory & Resource Type |
---|---|
1 | anim/ File XML yang mendefinisikan animasi properti. Mereka disimpan dalam folder res/anim/ dan diakses dari kelas R.anim. |
2 | color/ File XML yang mendefinisikan daftar warna negara. Mereka disimpan dalam res/color/ dan diakses dari kelas R.color. |
3 | drawable/ File gambar seperti file .png, .jpg, .gif atau XML yang dikompilasi menjadi bitmap, daftar negara bagian, bentuk, animasi yang dapat digambar. Mereka disimpan dalam res/drawable/ dan diakses dari kelas R.drawable. |
4 | layout/ File XML yang menentukan tata letak antarmuka pengguna. Mereka disimpan di res/layout/ dan diakses dari kelas R.layout. |
5 | menu/ File XML yang menentukan menu aplikasi, seperti Menu Opsi, Menu Konteks, atau Sub Menu. Mereka disimpan dalam res/menu/ dan diakses dari kelas R.menu. |
6 | raw/ File sewenang-wenang untuk disimpan dalam bentuk mentah. Anda perlu memanggil Resources.openRawResource() dengan ID sumber daya, yaitu R.raw.filename untuk membuka file mentah tersebut. |
7 | values/ File XML yang berisi nilai-nilai sederhana, seperti string, integer, dan warna. Misalnya, berikut adalah beberapa konvensi nama file untuk sumber daya yang dapat Anda buat di direktori ini :
|
8 | xml/ File XML sewenang-wenang yang dapat dibaca saat runtime dengan memanggil Resources.getXML(). Anda dapat menyimpan berbagai file konfigurasi di sini yang akan digunakan saat run time. |
Sumberdaya Alternatif
Aplikasi Anda harus menyediakan sumber daya alternatif untuk mendukung konfigurasi perangkat tertentu. Misalnya, Anda harus menyertakan sumber daya alternatif yang dapat ditarik (mis. Gambar) untuk resolusi layar yang berbeda dan sumber daya string alternatif untuk bahasa yang berbeda. Saat runtime, Android mendeteksi konfigurasi perangkat saat ini dan memuat sumber daya yang sesuai untuk aplikasi Anda.Untuk menentukan alternatif spesifik konfigurasi untuk satu set sumber daya, ikuti langkah-langkah berikut :
- Buat direktori baru di res / bernama dalam bentuk <resources_name> - <config_qualifier>. Di sini resources_name akan menjadi salah satu sumber daya yang disebutkan dalam tabel di atas, seperti tata letak, gambar, dll. Kualifikasi akan menentukan konfigurasi individu untuk penggunaan sumber daya ini. Anda dapat memeriksa dokumentasi resmi untuk daftar kualifikasi lengkap untuk berbagai jenis sumber daya.
- Simpan sumber alternatif masing-masing dalam direktori baru ini. File sumber daya harus dinamai persis sama dengan file sumber daya default seperti yang ditunjukkan pada contoh di bawah ini, tetapi file-file ini akan memiliki konten khusus untuk alternatif. Misalnya meskipun nama file gambar akan sama tetapi untuk layar resolusi tinggi, resolusinya akan tinggi.
Di bawah ini adalah contoh yang menentukan gambar untuk layar default dan gambar alternatif untuk layar resolusi tinggi.
MyProject/ app/ manifest/ AndroidManifest.xml java/ MyActivity.java res/ drawable/ icon.png background.png drawable-hdpi/ icon.png background.png layout/ activity_main.xml info.xml values/ strings.xml
Di bawah ini adalah contoh lain yang menentukan tata letak untuk bahasa default dan tata letak alternatif untuk bahasa Arab.
MyProject/ app/ manifest/ AndroidManifest.xml java/ MyActivity.java res/ drawable/ icon.png background.png drawable-hdpi/ icon.png background.png layout/ activity_main.xml info.xml layout-ar/ main.xml values/ strings.xml
Mengakses Sumber Daya
Selama pengembangan aplikasi Anda, Anda perlu mengakses sumber daya yang ditentukan baik dalam kode Anda, atau dalam file XML tata letak Anda. Bagian berikut menjelaskan cara mengakses sumber daya Anda di kedua skenario :Mengakses Sumberdaya dalam Kode
Ketika aplikasi Android Anda dikompilasi, sebuah kelas R akan dihasilkan, yang berisi ID sumber daya untuk semua sumber daya yang tersedia di direktori res/ Anda. Anda dapat menggunakan kelas R untuk mengakses sumber daya itu menggunakan sub-direktori dan nama sumber daya atau langsung ID sumber daya.Contoh
Untuk mengakses res/drawable/myimage.png dan mengatur ImageView Anda akan menggunakan kode berikut :ImageView imageView = (ImageView) findViewById(R.id.myimageview); imageView.setImageResource(R.drawable.myimage);
Di sini, baris pertama dari kode ini menggunakan R.id.myimageview untuk mendefinisikan ImageView dengan id myimageview dalam file Layout. Baris kedua kode menggunakan R.drawable.myimage untuk mendapatkan gambar dengan nama myimage yang tersedia di sub-direktori drawable di bawah /res.
Contoh
Pertimbangkan contoh berikut di mana res/values/strings.xml memiliki definisi berikut :<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello, World!</string> </resources>
Sekarang Anda dapat mengatur teks pada objek TextView dengan ID msg menggunakan ID sumber daya sebagai berikut :
TextView msgTextView = (TextView) findViewById(R.id.msg); msgTextView.setText(R.string.hello);
Contoh
Pertimbangkan tata letak res / tata letak / activity_main.xml dengan definisi berikut :<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello, I am a TextView" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello, I am a Button" /> </LinearLayout>
Kode aplikasi ini akan memuat tata letak ini untuk suatu Kegiatan, dalam metode onCreate () sebagai berikut :
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }
Mengakses Sumberdaya dalam XML
Pertimbangkan file res / values / strings.xml XML sumber daya berikut yang menyertakan sumber daya warna dan sumber daya string :<?xml version="1.0" encoding="utf-8"?> <resources> <color name="opaque_red">#f00</color> <string name="hello">Hello!</string> </resources>
Sekarang Anda dapat menggunakan sumber daya ini di file tata letak berikut untuk mengatur warna teks dan string teks sebagai berikut :
<?xml version="1.0" encoding="utf-8"?> <EditText xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:textColor="@color/opaque_red" android:text="@string/hello" />
Sekarang jika Anda akan melalui bab sebelumnya sekali lagi di mana saya telah menjelaskan contoh membuat Hello World! , dan saya yakin Anda akan memiliki pemahaman yang lebih baik tentang semua konsep yang dijelaskan dalam bab ini. Jadi saya sangat merekomendasikan untuk memeriksa bab sebelumnya untuk contoh kerja dan memeriksa bagaimana saya telah menggunakan berbagai sumber daya pada tingkat yang sangat dasar.
Sumber : Tutorials Point
Tidak ada komentar:
Posting Komentar