SORU
7 NİSAN 2011, PERŞEMBE


/Res /varlıklar arasındaki fark dizinleri

Biliyorum bu dosyaları res directory ile erişilebilen R.class varlık gibi davranır, bir dosya sistemi, ama benim için, genel olarak, ne zaman bunu en iyi şekilde kullanmak bir diğeri.
Herkes res ve varlıklar arasındaki gerçek farklılıkları bilmek bana yardımcı olabilir misiniz?

CEVAP
7 NİSAN 2011, PERŞEMBE


Kaynakları ile, yerleşik farklı diller için alternatifler sağlamak için destek yok, işletim sistemi sürümleri, ekran yönelimleri, vb., here nitelendirdi. Bunların hiçbiri varlıklar ile kullanılabilir. Ayrıca, API birçok yerinde kaynak tanımlayıcıları kullanımını destekler. Son olarak, kaynaklarını Kodu ve kaynakları kendi aralarında uyuşmazlıklar için bir fırsat daha var yani derleme zamanında kontrol, sabit alan adları dönüştü. Bunların hiçbiri varlıklar için geçerlidir.

Neden bir varlık hiç bir klasör var mı? Eğer çalıştırma sırasında kullanmak istediğiniz varlık hesaplamak oldukça kolay. Kaynakları ile kullanılabilecek kaynak Kimlikleri tüm listesi ilan ve liste içine bir dizin hesaplamak gerekir. (Bu ise kaynak geliştirme döngüsünde değişiklikler eğer uygunsuz bir durum ve hata için fırsatlar sunar.) (EDİT: isimde bir kaynak KİMLİĞİ getIdentifier kullanarak, ama bu bir derleme faydaları kontrolü kaybeder.) alabilirsiniz Varlıklar da kaynaklar tarafından desteklenmeyen bir klasör hiyerarşisi, içine organize edilebilir. Veri yönetiminin farklı bir yolu. Kaynakların çoğu kapak rağmen, varlıklar ara sıra kullanımları var.

Bir diğer fark: kaynak kitaplığı projesi olarak tanımlanan otomatik olarak Kitaplığı kullanan uygulama projeleri için alınır. Varlıklar için böyle bir şey olmaz; varlık dosyaları Uygulama Projesi aktif dizin(ler) bulunması gerekir. [EDİT: Android Gradle-based build system Yeni (Android Studio ile kullanılır), bu artık doğru değil. Kütüphane projeleri için varlık dizinleri paketlenir .aar dosyaları, bu yüzden varlıkları tanımlı kütüphane projeleri birleştirilir içine uygulama projeleri (yani onlar henüz mevcut uygulamanın /assets dizin eğer onlar bir referans kitaplığı).]

EDİT: başka bir farkı ise, uygulama ile özel bir yazı tipi paketi istiyorsanız doğar. API calls Typeface uygulamanızda yazı tipi dosyası dosya sisteminde depolanan veya assets/ Bir dizin oluşturmak için vardır. Ama API oluşturmak için Typeface bir yazı tipi dosyası kayıtlı res/ dizin (veya bir InputStream, hangisi izin kullanım res/ dizin).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CaliforniaMetin

    CaliforniaMe

    3 ŞUBAT 2013
  • super1988guy

    super1988guy

    9 Aralık 2007
  • Techmoan

    Techmoan

    31 Mayıs 2009