Android'de bir Bitmap Drawable dönüştürmek nasıl?


447

Bir Bitmap görüntüsünü Çekilebilir'e nasıl dönüştürebilirim?


2
Merhaba sorunuzun cevabını bu bağlantıyı takip ettim ve doğru cevabı aldım. ve ben başarı, umarım başarı elde edersiniz. iyi şanslar androidsnippets.com/convert-bitmap-to-drawable
Zala Janaksinh

2
Katkı teşekkür etmek için harika bir yoldur ... :) Cevap verme açısından katkılar ... :)
Farhan

@Farhan k .......
Abhi

Yanıtlar:


265

Kullanmak istediğiniz gibi geliyor BitmapDrawable

Belgelerden:

Bir Drawablebitmap'i saran ve döşenebilen, gerilebilen veya hizalanabilen A. Bir oluşturabilir BitmapDrawableXML enflasyon yoluyla, bir dosya yolundan bir giriş akışı ya da bir gelen Bitmap nesne.


21
@Deprecated Çekmecenin hedef yoğunluğunu doğru ayarladığından emin olmak için BitmapDrawable (Kaynaklar, Bitmap) kullanın.
Camille Sévigny

79
yararlı olmayan yazı, yararlı olmayan yorum. biraz kod eklerseniz daha iyi olur
voghDev

827

Bunu deneyin bir Bitmapgörüntü türüne dönüştürürDrawable

Drawable d = new BitmapDrawable(getResources(), bitmap);

Beklediğim bu!
mazend

147

A dönüştürüldüğünde yanlış ölçekleme bitmap'lerle ilgili büyük miktarda sorun gördükten sonra, dönüştürmenin BitmapDrawablegenel yolu şöyle olmalıdır:

Drawable d = new BitmapDrawable(getResources(), bitmap);

Olmadan Resources reference, bitmapdoğru ölçekli bile, düzgün görünmeyebilir. Burada sadece bitmapargüman ile doğrudan bir çağrı yerine bu yöntemi kullanarak çözülecek çok sayıda soru var .


12
En azından neden oy vermeyecekseniz yorum yapın. Bu tamamen geçerli bir cevaptır ve sunulan diğer cevaplarla ortaya çıkabilecek sorunları çözmek için ekstra bilgi getirir. Doğrudan bir bitmapten yapılan çizilebilirler genellikle getResources () referansı olmadan ölçeklendirme hatalarına sahiptir.
Zulaxia

4
@Manoj'dan gelen kişinin kullanımdan kaldırıldığı düşünüldüğünde bu daha doğru bir cevaptır.
Raykud

35

Resmi Bitmapdrawable belgeleri

Bu, bitmap'in çekilebilir hale nasıl dönüştürüleceğine dair bir örnektir

Bitmap bitmap;  
//Convert bitmap to drawable
Drawable drawable = new BitmapDrawable(getResources(), bitmap);
imageView.setImageDrawable(drawable);

üzgünüm ... ben ciddi değildim
Abhi

5
Aynı cevabı yazmak yerine iptal etmiş olabilirsiniz.
CopsOnRoad

31

Bağlamla kullandım

//Convert bitmap to drawable
Drawable drawable = new BitmapDrawable(context.getResources(), bitmap);

5
Yinelenen cevap.
CopsOnRoad

19

Bir bitmap resminiz varsa ve çekilebilir olarak kullanmak istiyorsanız, örneğin

Bitmap contact_pic;    //a picture to show in drawable
drawable = new BitmapDrawable(contact_pic); 

20
Artık reddedildi. BitmapDrawable (Kaynaklar, Bitmap) yapıcısını şimdi kullanın.
schlingel

1
@schlingel Hala iyi çalışıyor ve çoğumuz bunu projelerimizde kullanıyoruz,
Pir Fahim Shah

2
Bu sizin için iyi, ancak Google sonunda bu yapıcıyı öldürdüğünde ve her şeyi yeniden yazmanız gerektiğinde yardımcı olmaz.
schlingel

@schlingel evet, ama yine de acele bazı biri bunu kullanın ve bir iş yapmak
Pir Fahim Shah

11

Sadece bunu yap:

private void setImg(ImageView mImageView, Bitmap bitmap) {

    Drawable mDrawable = new BitmapDrawable(getResources(), bitmap);
    mImageView.setDrawable(mDrawable);
}


3

1) Çekilebilir Bitmap:

Drawable mDrawable = new BitmapDrawable(getResources(), bitmap);
// mImageView.setDrawable(mDrawable);

2) Bitmap'e çekilebilir:

Bitmap mIcon = BitmapFactory.decodeResource(context.getResources(),R.drawable.icon_resource);
// mImageView.setImageBitmap(mIcon);

1

İşte burada bir başkası:

Drawable drawable = RoundedBitmapDrawableFactory.create(context.getResources(), bitmap);

0

kod kullanarak sketchware uygulamasında çizilebilir gizli bit haritası

    android.graphics.drawable.BitmapDrawable d = new android.graphics.drawable.BitmapDrawable(getResources(), bitmap);
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.