Alt 23.Ekim.2017
  #1
abulbl - ait Kullanıcı Resmi (Avatar)
Site Kurucusu
Reklam
Kaliteli bir Android Uygulaması oluşturmak için kullandığımız çok fazla öğe vardır.Uygulamanızı kodlamanın yanı sıra dikkat etmemiz geren birçok öğe vardır. Bunlar bitmaps, renkler, sayfa düzeni tanımları, kullanıcı arayüzü, animasyon gösterimleri gibi sabit içerikler bunlardan bazılarıdır. Bu kaynaklar her zaman projenizin res/ dizininin altındaki çeşitli alt dizinlerde ayrı olarak muhafaza edilir.

Bu dersimizde uygulama kaynaklarınızı nasıl düzenleyeceğinizi anlatacağım.

1 anim/

Bu özellik animasyonları tanımlayan XML dosyalarını içerir. Animasyon kodları res/anim klasörüne kaydedilir ve R.anim sınıfından erişilebir.

2 color/

Bu özellik resimlerin listesinin bulunduğu XML dosyalarını tanımlar. Resim kodları res/color/’da saklanır ve R.color class’ından erişilebilir.

3 drawable/

Bu özellik .png, .jpg, .gif resim dosyalarının ya da XML dosyasının durum listeleri, şekille ve çizilebilir animasyon gibi derleyerek bitmapse bağlar. Bunlar res/drawable’da saklanır ve R.drawable class’ından erişilebilir.

4 layout/

Bu özellik kullanıcı arayüzü düzenini tanımlayan XML dosyasıdır. Layout l-kodları res/layout’da saklanır ve R.layout class’ından erişilebilir.

5 menu/
Bu özellik seçenek menüsü ya da alt menü gibi uygulama menülerini tanımlayan XML dosyalarını tanımlar. Menu kodları res/menu’da saklanır ve R.menu class’ından erişilebilir.

6 raw/

İsteğe bağlı oluşturulan dosyaların kaydedildiği dizindir. Bunun gibi ham dosyaları açmak için R.raw.filename olan kaynak kimliğiyle Resources.openRawResource () öğesini çağırmanız gerekir.

7 values/

XML dosyaları strings, integers ve renkler gibi basit değerleri içerir. Örnek olarak, aşağıda bu dosya içinde oluşturabileceğiniz bazı dosya isimlerini sizin için düzenledim.

arrays.xml array kaynakları içindir ve R.array class’ından erişilebilir.

integers.xml intergers kaynakları içindir ve R.interger class’ından erişilebilir.

Bools.xml boolean kaynakları içindir ve R.bool class’ından erişilebilir.

colors.xml color(renk) kaynakları içindir ve R.color class’ından erişilebilir.

dimens.xml dimension kaynakları içindir ve R.dimen class’ından erişilebilir.

Strings.xml string kaynakları içindir ve R.string class’ından erişilebilir.

styles.xml styles kaynakları içindir ve R.style class’ından erişilebilir.


8 xml/

Resources.getXML() tarafından çağrılan isteğe bağlı XML dosyalarıdır. Belirli bir zamanda çalıştırmak istediğinizçeşitli konfigürasyon dosyalarını burada saklayabilirsiniz.

Alternative Resources

Uygulamanız özel cihaz configürasyonları desteklemek için alternatif kaynaklar sağlamalıdır. Örnek olarak, uygulamanızın farklı dil seçenekleri için farklı ekran çözümü ya da alternatif string kaynakları desteklemesi için çizilebilir(resim gibi) farklı alternatifleri eklemeniz gerekir. İşlem sırasında, uygulamanız için en uygun kaynakları yükler ve anlık cihaz konfigürasyonunu saptar.

Özelleştirilmiş konfigürasyon- kaynakların kurulması için kişiye özel alternatifler - aşağıdaki aşamaları takip edin.

Res/ içinde <resources_name>-<config_qualifier> anlandırılan formun içinde yeni bir dizin oluşturun. Burada resource_name yukarıda belirtilen layout gibi yukarıdaki tabloda geçen kaynaklardan herhangi biri olacaktır. Farklı tip kaynaklar için niteliklerin tam listesi için resmi dokümanları kontrol edebilirsiniz.

Bu yeni dizinin içine alternatif kaynakları kaydedin. Kaynak dosyaları aşağıdaki örnekte gösterildiği gibi varsayılan kaynak dosyalarıyla tamamen aynı olmalıdır, fakat bu dosyalar alternatif kaynağın içeriğine sahip olacaktır. Örnek olarak, resim dosyasının ismi aynı olmasına rağmen, yüksek çözünürlüklü ejran için yüksek çözünürlüklü olacak.

Aşağıda, varsayılan ekranın görüntülerini ve yüksek çözünürlüklü ekranın alternatif görüntülerini belirten bir örnek verilmiştir.

Kod:
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
Aşağıda, bir varsayılan dili ve Arapça için alternatif layout düzenini belirten başka bir örnek verilmiştir.

Kod:
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
Kaynaklara Erişim

Uygulamanızı geliştirdiğiniz süre boyunca hem layout XML dosyalarınızı hem de kodunuzun içindeki tanımlanmış kaynaklara erişiminiz gerekecektir. Sonraki adımda her iki senaryoda da kaynaklara nasıl erişebileceğinizi açıklayacağım.

Kodun içindeki Kaynalara Erişmek

Android uygulamanızın düzenlendiği zaman res/ dizininizde bütün etkin kaynaklarınız için kaynak IDs içeren a R class’ı oluşturulur. R class’ını alt dizin kaynak kullanımı ve kaynak ismi ya da direk kaynak ID’ye erişmek için kullanabilirsiniz.

Örnek

res/drawable/myimage.png’ye erişmek için ve bir ImageView kurmak için aşağıdaki kodları kullanacaksınız.

Kod:
ImageView imageView = (ImageView) findViewById(R.id.myimageview);
imageView.setImageResource(R.drawable.myimage);
Bu kısımda ile satır layout dosyasının içindeki myimageview id’si ile tanımlanmış ImageView elde etmek için R.id.myimageview’in kullanımı yapmak için gerekli koddur. İkinci satır ise /res altında drawable sub-directory içinde myimage isimli bir resmi elde etmek için R.drawable.myimage’in kullanımını yapan bir koddur.

Örnek
Res / values / strings.xml dosyasında aşağıdaki tanımın bulunduğu bir sonraki örnek üzerinde duralım.

Kod:
<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string  name="hello">Hello, World!</string>
</resources>
Şimdi aşağıdaki gibi bir ID kaynak ID msg kullanımıyla bir TextView objesi üzerine text kurabilirsiniz.

Kod:
TextView msgTextView = (TextView) findViewById(R.id.msg);
msgTextView.setText(R.string.hello);
Örnek
Aşağıdaki tanımlı bir layout res/layout/activity_main.xml üzerinde duralım.

Kod:
<?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 ** a TextView" />

   <Button android:id="@+id/button"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Hello, I ** a Button" />
      
</LinearLayout>
Bu uygulama kodu onCreate() metodu içinde Activity için layout yükleyecektir. Aşağıdaki örneğe bakalım:
public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main_activity);
}
XML Kaynaklarına Erişim

Bir color kaynağı ve bir string kaynağı içeren aşağıdaki res / values / strings.xml dosyası üzerinde duralım

Kod:
<?xml version="1.0" encoding="utf-8"?>
<resources>
   <color name="opaque_red">#f00</color>
   <string name="hello">Hello!</string>
</resources>
Şimdi text color ve text string’i aşağıdaki gibi ayarlamak için bu kaynakları aşağıdaki layout dosyasında kullanabilirsiniz:

Kod:
<?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" />
Şimdi Hello World( Ders 1)’da anlattığım bir önceki bölüme tekrar dönerseniz eminim ki o konudaki açıklanmış özellikleri daha iyi anlayacaksınız. Bu yüzden eğer bu dersi anladıysanız geçmiş konuyu tekrar kontrol etmenizi ve çeşitli kaynakları en temel düzeyde nasıl kullandığımı kontrol etmenizi öneririm.


« önceki Konuya git | sonraki Konuya git »

Şuan bu sayfada bulunan kişiler: 1 kişi (0 üye ve 1 ziyaretçi)
 
Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok
BB kodu Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Seçenekler
Stil



Tüm Zamanlar GMT +2 Olarak Ayarlanmış. Şuanki Zaman: 17:12.

Bize Yazin - Webmaster Forumu - Arşiv - Yukarı git
Powered by vBulletin™ Version 3.8.9 Beta 1
Copyright © 2019 vBulletin Solutions, Inc. All rights reserved.
Telefon zil sesleri | Prezeci.com