Android: @ drawable / resim çekilebilir hale getirilemedi


112

Çekilebilir klasörümde birkaç resmim var ve hepsi mükemmel referans veriyor, ancak aynı klasöre aynı boyutta daha fazla resim eklemeye çalıştığımda ve buna referans vermeye çalıştığımda, bir hata oluşuyor "@ dönüştürülemedi çekilebilir / resim çekilebilir hale " . Aynı görüntüyü farklı bir isimle denedim ve bana bu hatayı vermeye devam ediyor. Ayrıca farklı bir XML düzeninde ve aynı şeyi denedim. Ayrıca resmin adı "jack", "abc", "question_mark" olmuştur, görebileceğiniz gibi, kullanabileceğiniz karakterlerin kurallarında kesinlikle vardır ve hala hata mesajı gelmeye devam etmektedir. Sorunun nasıl çözüleceğine dair herhangi bir tavsiye çok iyi olur, teşekkürler.

@ Drawable / resim çekilebilir hale dönüştürülemedi


2
Hepsi garip bir nedenden ötürü sıralandı, birkaç tıklama daha sonra aniden çalışıyor! Bu sorunu alırsanız benim tavsiyem, sadece tutulmayı yeniden başlatmak ve her şeyin doğru şekilde referanslandığından ve adlandırıldığından emin olmaktır.
Jack Trowbridge

2
Bazen projeyi sıfırdan yeniden oluşturmak, bu Android SDK sorunlarından kurtulmanıza yardımcı olur. Tüm çekilebilir öğelerim için yanlış görüntüler kullandığı garip durumlar gördüm (hata yok, ancak her çekilebilir resim için doğru olanın yanındaki resmi kullanmak) muhtemelen bir referans kimliği sorunu.
Guillaume

tekrar -1 Android, +1 Windows
mihai71

4
Benim için dosya adının ortasındaki karakter "-" idi. Yeniden adlandırdıktan sonra Android Studio'da her şey yolunda gitti.
martin.p

Yanıtlar:


200

Eclipse'i yeniden başlatın (maalesef) ve sorun ortadan kalkacaktır.


Eclipse'de projeyi kapatıp yeniden açmak benim için çalıştı. Teşekkürler Aliyah!
stephen.hanson

Ia'da bu sorunu çekilebilir normal hdpi ile yaşadım, ancak resimlerimi çekilebilir hdpi'de aldığımda - her şey yolunda.
Yar

@DoctororDrive - belki sorununuz biraz farklıydı. Hala hatan var mı?
Androliyah

4
bu sorunun hem tutulma hem de android stüdyosunda var olması çok komik
Mohammad AbuShady

3
kapatma / yeniden açma projesi benim için işe yaramadı, ancak android stüdyosundan çıkmak / yeniden başlatmak işe yaradı. teşekkür ederim Aliyah.
tmr

143

Ayrıca kaynak adının herhangi bir geçersiz karakter içerip içermediğini kontrol edin (benim için resmimde "-" idi)


Android'in kendi simge paketi, Eclipse'in boğulduğu 10-device-access-alarms.png gibi dosya adlarını içerir! Teşekkürler.
Noumenon

12
Android stüdyosu da bu dosya adlarını boğuyor. Alt çizgi olarak yeniden adlandırmak benim için sorunu çözdü.
Cypress Frankenfeld

Benim için "" uzay karakteriydi!
Efreeto

benim durumumdaki suçlu boşluktu
Saju

benim için de "-" idi, garip bir şekilde android stüdyosu bu şeyi kırmızı olarak işaretlemedi ...
Haseeb Zulfiqar

55

Eclipse'i yeniden başlatmak sorunu çözmezse, görüntü adının bir alfa karakterle (sayısal olmayan) başladığından emin olun.


4
Teşekkürler. Android, çekilebilir adla R dosyasında çekilebilir kimlik değişkenini oluşturur. Örneğin, dosya bir sayıyla başlıyorsa, değişken bir sayıyla başlar ve buna Java dilinde izin verilmez.
momo

9
Ayrıca tire (-) içermediğinden emin olun; örneğin, "mikrofon geri" geçersiz, "mic_back" tamam
Markus

Bu benim sorunumdu. Android'in web sitesindeki paketteki tüm simgelerin önde gelen numaraları vardır.
theblang

Bir png olmak zorunda mı? Jpg'leri kullanmaya çalışıyorum.
IgorGanapolsky

28

file nameyalnızca abc...xyz 012...789 _ . Kaynaklar klasöründe bulunmalıdır .

örneğin:

my-resim.png olduğunuFalse !
MyImage.png olduğunuFalse !
Benim resim.png olduğunuFalse !
...
...

my-xml.xml olduğunuFalse !
MyXml.xml olduğunuFalse !
Benim xml.xml olduğunuFalse !
...
...


25

Bunun nedeni, Görüntü adınızın "-" simgesi içermesidir. izin verilen tek karakterler [a-zA-Z0-9_.]

Teşekkürler


1
Büyük harfler geçerli değildir. Bunları kullanırsanız, Android Studio şu hatayı verecektir: Hata: ': app: mergeDebugResources' görevi için yürütme başarısız oldu. > Hata: Geçersiz dosya adı: yalnızca küçük harf ve rakam içermelidir ([a-z0-9_.])
LightMan

5

Android Studio'da da aynı sorunu yaşıyorum. IDE'yi yeniden başlatmanıza gerek yok, sadece projeyi kapatıp yeniden açın ve bu sorunu çözecektir. (Src'nin doğru girdi olduğundan emin olun).


Projeyi yeniden inşa etmek de bunu yapacak.
Mike

Dosya -> Önbellekleri Geçersiz Kıl / Yeniden Başlat ... yaptım, bu da işe yaradı (ve muhtemelen aşırıdır).
SMBiggs

3

Android Studio'da kaynak (resimler) dosya adınız ile başlayamaz NUMERICve herhangi bir BIGkarakter içeremez . Sorununuzu çözmek için Aliyah'ın dediği gibi yapın. IDE'nizi yeniden başlatmanız yeterlidir. Bu benim de sorunumu çözdü.


2

Dosyanızın adını basitleştirin, öyle görünüyor ki dosya adındaki herhangi bir özel karakter onu hıçkırık yapıyor. örneğin "my-main-header.png" yi "header1.png" olarak değiştirmek nedenini bilmiyorum ama işe yarıyor


2
Kaynak dosya adları kaynak tanımlayıcıları dönüştürülür olmasıdır R.javave -tanımlayıcıları için geçerli bir karakter değil.
laalto

2

Android Studio için aynı sorunu yaşadım. Bunun nedeni, linux'tan çalıştırılmasıydı, yani dosyalar otomatik olarak bir uzantı almıyordu. Dosya adlarının sonuna manuel olarak .png ekleyerek dosya türünü tanıyabilir ve uygun şekilde yükleyebilir.

Android stüdyosu, projenin içinde yeniden adlandırmayı yeniden düzenlemeye çalışırsanız tedirginlik verebilir çünkü android R'yi hemen yeniden oluşturmaya çalışacaktır. Görünüşte rastgele bir kod satırına işaret ettiği için hataya neyin sebep olduğunu tam olarak bilmiyorum, ki bu benim durumumda bir yorumdu.

Bunun çözümü: Çizilebilirden silin, projenin dışında yeniden adlandırın ve tekrar ekleyin.


1

Diğer posterlerin önerdiğinden daha da önemsiz olabilir: birden fazla projeniz varsa xml düzen dosyasını yanlış projede oluşturmadığınızdan emin olun.

Oluşturulduktan sonra, dosya otomatik olarak açılacaktır, böylece bu fark edilmeyebilir ve doğru projede olduğunu varsayarsınız. Açıktır ki, çekilebilir öğeler veya diğer kaynaklara yapılan atıflar geçersiz olacaktır.

Ve evet, ben o kadar aptalım. Kullanılmayan projeleri bundan sonra kapatacağım :)


1

Sanırım Eclipse'i yeniden başlatmadan veya projeyi kapatmadan çalıştırmanın bir yolunu buldum (benim için çalıştı):

  • Res / içinde Eclipse'de görüntü dosyasının adını yeniden adlandırın -> dosyayı seçin ve F2'ye basın (benim için res / drawable-mdpi / bush-landscape.jpg -> bush.jpg olarak değiştirildi)

  • Derleme Projesi (yine de hata gösterecektir)

  • onu kullandığınız yerde resmi değiştirin (Grafik Düzende değiştirdim. Benim için yer Doğrusal Yerleşim / Arka Plan / çalı-manzara idi -> "çalı-manzarası", "çalı" olarak değiştirildi)

  • Proje Oluştur


1

Resmimin adı 21.jpg idi. Abc.jpg olarak yeniden adlandırdım ve işe yaradı. Bu nedenle, resim adınızın bir sayı ile başlamadığından emin olun. Ancak yukarıdaki tüm cevaplar da kabul edilmektedir.


1

Adlandırma kurallarını doğru kullanıyorsanız, Dosya -> Önbellekleri Geçersiz Kıl / Yeniden Başlat'a gidin .

Ve Önbellekleri Geçersiz Kıl / Yeniden Başlat'a basın ..

Bu benim durumumda yardımcı oldu.


0

Benim durumumda, farklı dpi ve cihaz boyutlarını desteklemek için farklı klasörlerde (aynı ada sahip) bir resmim vardı. Biri hariç tüm resimler aynı ada sahipti. Yanlış yazılmıştı ve diğer isimler gibi yeniden adlandırdığımda sorunumu çözdü.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.