4 Mart 2015 Çarşamba

Java kodunda yazılan activitynin res/ deki kaynaklara erişmesi nasıl sağlanır?

Uygulama compile edildiğinde otomatik olarak gen/ klasörü içinde bir R classı yaratılır.
R classında res/ klasöründeki kaynakların IDleri bulunur.
R classı aracılığıyla bir activity bu kaynaklara erişebilir.

Örnek 1:
res/drawable/background.png dosyasına Java kodundan erişmek için:
ImageView imageView = (ImageView) findViewById(R.id.bgid); //R classı ile layout dosyasından ilgili view ı buluyor
imageView.setImageResource(R.drawable.background); //R classı ile res/drawable/ klasöründen ilgili resmi bulup view'a atıyor

Örnek 2:
res/values/strings.xml deki hello adlı stringi "msg" id'li textview e yazdırmak için:
TextView msgTextView = (TextView) findViewById(R.id.msg); //R classıyla "msg" kodlu view'ı buluyor
msgTextView.setText(R.string.hello); //R classıyla "hello" adlı stringi bulup view'a atıyor

Örnek 3:
res/values/strings.xml dosyasına renk ve string ekleyelim:
   <color name="opaque_red">#f00</color>
   <string name="hello">Hello!</string>
layout1.xml de bu renk ve stringi kullanabiliriz:
   <EditText xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    android:textColor="@color/opaque_red"
    android:text="@string/hello"
    ...
    />

Hiç yorum yok:

Yorum Gönder