0
內加載網頁的圖像,我需要從網上獲得的圖像,並在我的應用程序的主要活動顯示。我試圖把它放在一個單獨的線程內,用下面的代碼(它會在onCreate方法中):安卓:從一個單獨的線程
Thread trd = new Thread(new Runnable(){
@Override
public void run(){
ImageView iv1 = (ImageView) findViewById(R.id.promo);
try{
URL url = new URL("http://www.domain.com/image.jpg");
InputStream content = (InputStream)url.getContent();
Drawable d = Drawable.createFromStream(content, "src");
iv1.setImageDrawable(d);
}
catch(Exception e){
e.printStackTrace();
}
}
});
trd.run();
此代碼工作正常,更新與我從網絡上獲得的圖像用戶界面。
問題:
聽說的Android只允許你修改從主UI線程的用戶界面,但它看起來與我類似的代碼,我從一個單獨的線程裏面做。怎麼來的?我應該擔心我的代碼可能因爲某種原因而中斷嗎?
是上面的代碼效率,以確保在等待Web圖像我的應用程序UI不會凍結被檢索?
但我的代碼,目前工作正常,這就是爲什麼我很好奇。 – 2012-07-18 18:57:02
你清楚你的代碼失蹤something..look again..btw你可以看到IV1新形象?我覺得這樣不好。並可能是你的'應用程序'不會崩潰。當你趕上'Exception'..a很不好,感染最糟糕的事情在作弄我趕上一般'Exception' – 2012-07-18 19:01:43
我不知道發生了什麼事情,但是,是的代碼工作正常,我這樣做可以看到圖像。但我會進一步調查,因爲我認爲你是對的。 – 2012-07-18 19:03:21