Android編程顯示網(wǎng)絡(luò)上的圖片實(shí)例詳解
本文實(shí)例講述了Android編程顯示網(wǎng)絡(luò)上的圖片的方法。分享給大家供大家參考,具體如下:
在Android中顯示網(wǎng)絡(luò)上的圖片,需要先根據(jù)url找到圖片地址,然后把該圖片轉(zhuǎn)化成Java的InputStream,然后把該InputStream流轉(zhuǎn)化成BitMap,BitMap可以直接顯示在android中的ImageView里。這就是顯示網(wǎng)絡(luò)上圖片的思路,實(shí)現(xiàn)起來(lái)很簡(jiǎn)單。下面讓我們看一下實(shí)現(xiàn)起來(lái)的過(guò)程。
首先在AndroidManifest.xml中給程序加上訪問(wèn)Internet的權(quán)限:
然后在布局文件中加入一個(gè)ImageView,用來(lái)顯示網(wǎng)絡(luò)上的圖片:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView" />
</LinearLayout>
在主程序的Activity中寫(xiě)從網(wǎng)絡(luò)中得到圖片,并轉(zhuǎn)化成InputStream,然后再轉(zhuǎn)化成可以顯示在ImageView里的Bitmap。
package com.image;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.widget.ImageView;
public class NetImageActivity extends Activity {
/** Called when the activity is first created. */
String imageUrl = "http://content.52pk.com/files/100623/2230_102437_1_lit.jpg";
Bitmap bmImg;
ImageView imView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imView = (ImageView) findViewById(R.id.imageView);
imView.setImageBitmap(returnBitMap(imageUrl));
}
public Bitmap returnBitMap(String url){
URL myFileUrl = null;
Bitmap bitmap = null;
try {
myFileUrl = new URL(url);
} catch (MalformedURLException e) {
e.printStackTrace();
}
try {
HttpURLConnection conn = (HttpURLConnection) myFileUrl
.openConnection();
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();
bitmap = BitmapFactory.decodeStream(is);
is.close();
} catch (IOException e) {
e.printStackTrace();
}
return bitmap;
}
}
然后運(yùn)行程序就可以顯示出來(lái)網(wǎng)絡(luò)上的圖片了。
運(yùn)行效果:

PS:關(guān)于AndroidManifest.xml權(quán)限控制詳細(xì)內(nèi)容可參考本站在線工具:
Android Manifest功能與權(quán)限描述大全:
http://tools.jb51.net/table/AndroidManifest
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Android圖形與圖像處理技巧總結(jié)》、《Android開(kāi)發(fā)入門(mén)與進(jìn)階教程》、《Android調(diào)試技巧與常見(jiàn)問(wèn)題解決方法匯總》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android基本組件用法總結(jié)》、《Android視圖View技巧總結(jié)》、《Android布局layout技巧總結(jié)》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
- Android實(shí)現(xiàn)ImageView圖片縮放和拖動(dòng)
- Android 圖片縮放實(shí)例詳解
- Android應(yīng)用中實(shí)現(xiàn)手勢(shì)控制圖片縮放的完全攻略
- android 多點(diǎn)觸摸圖片縮放的具體實(shí)現(xiàn)方法
- Android 圖片縮放與旋轉(zhuǎn)的實(shí)現(xiàn)詳解
- Android編程實(shí)現(xiàn)圖片的上傳和下載功能示例
- Android播放多張圖片形成的一個(gè)動(dòng)畫(huà)示例
- Android通過(guò)自定義ImageView控件實(shí)現(xiàn)圖片的縮放和拖動(dòng)的實(shí)現(xiàn)代碼
- Android 背景圖片的縮放實(shí)現(xiàn)
相關(guān)文章
Kotlin中?和!!的區(qū)別詳細(xì)對(duì)比
這篇文章主要給大家介紹了關(guān)于Kotlin中?和!!區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
android自定義按鈕示例(重寫(xiě)imagebutton控件實(shí)現(xiàn)圖片按鈕)
由于項(xiàng)目這種類(lèi)型的圖片按鈕比較多,所以重寫(xiě)了ImageButton類(lèi),現(xiàn)在把代碼分享給大家,需要的朋友可以參考下2014-03-03
Android ListView實(shí)現(xiàn)簡(jiǎn)單列表功能
這篇文章主要為大家詳細(xì)介紹了Android ListView實(shí)現(xiàn)簡(jiǎn)單列表功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08
Kotlin使用TransitionDrawable實(shí)現(xiàn)顏色漸變效果流程講解
這篇文章主要介紹了Kotlin使用TransitionDrawable實(shí)現(xiàn)顏色漸變效果,這里,我們通過(guò)TransitionDrawable顯示顏色漸變效果,包括背景顏色的變化,以及圖片與圖片的漸變效果2023-02-02
Android編程動(dòng)態(tài)加載布局實(shí)例詳解【附demo源碼】
這篇文章主要介紹了Android編程動(dòng)態(tài)加載布局,結(jié)合實(shí)例形式分析了Android動(dòng)態(tài)加載布局的原理、操作步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-10-10
flutter實(shí)現(xiàn)掃碼槍獲取數(shù)據(jù)源禁止系統(tǒng)鍵盤(pán)彈窗示例詳解
這篇文章主要為大家介紹了flutter實(shí)現(xiàn)掃碼槍獲取數(shù)據(jù)源禁止系統(tǒng)鍵盤(pán)彈窗示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
Android線程中設(shè)置控件的值提示報(bào)錯(cuò)的解決方法
這篇文章主要介紹了Android線程中設(shè)置控件的值提示報(bào)錯(cuò)的解決方法,實(shí)例分析了textview報(bào)錯(cuò)的原因以及Handler設(shè)置來(lái)解決錯(cuò)誤的實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-06-06

