public class TestButton extends Activity { /** Called when the activity is first created. */ ImageButton imgBtn; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); imgBtn = (ImageButton) findViewById(R.id.image); //String url = "http://thenextweb.com/apps/files/2010/03/google_logo.jpg"; String url1 = "http://trueslant.com/michaelshermer/files/2010/03/evil-google.jpg"; Drawable drawable = LoadImage(url1); imgBtn.setImageDrawable(drawable); } private Drawable LoadImage(String url) { try { InputStream is = (InputStream) new URL(url).getContent(); Drawable d = Drawable.createFromStream(is, "src"); return d; } catch (Exception e) { return null; } } }
ऊपर कोड स्निपेट है जिसे मैं छवि से वेब छवि में छवि लोड करने के लिए उपयोग करता हूं। अधिकांश छवियां प्रदर्शित होती हैं, लेकिन उपरोक्त की तरह कुछ यूआरएल i.e. url1, Drawable.createFromStream शून्य देता है !! इसका कारण क्या है और इससे बचने या इस समस्या को दूर करने का क्या कारण है?एंड्रॉइड में CreateFromStream कुछ यूआरएल
उपयोग कर रहा है बग एंड्रॉयड के 1.0 संस्करण में था, यह अभी भी 2.x में चारों ओर है? मेरे परीक्षणों में यह मामला प्रतीत होता है, लेकिन मैं Google से आधिकारिक पुष्टि की तलाश में हूं। साथ ही, आपके कोड में आप BUFFER_IO_SIZE को सेट करते हैं? – ThomasW
@ थॉमस डब्ल्यू निश्चित रूप से नहीं बता सकता है। मुझे दो चीजों के बारे में निश्चित जानकारी है कि यह वही व्यवहार है और उसी फिक्स ने 2.1 और 2.2 में एम्यूलेटर और डिवाइस दोनों पर मेरे लिए काम किया है। मैं BUFFER_IO_SIZE मान को शामिल करने के लिए अपना उत्तर अपडेट करूंगा। – mcveat
समाधान के लिए धन्यवाद, यह काम करता है। – sat