編輯:關於Android編程
在 Android 加載圖片一般使用 ImageView,這裡簡單記錄一下這個控件的使用方法。
最簡單就是在 xml 裡直接使用 ImageView 標簽:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/iv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/welcome" /> </LinearLayout>
如果不想在 xml 裡,也可以在程序裡面加載。比如:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
ImageView welcome = new ImageView(this);
welcome.setImageResource(R.drawable.welcome);
setContentView(welcome);
}
構建ImageView對象時傳遞了一個this參數,表示與當前上下文(context)關聯。這個Context由系統處理,它提供諸如資源解析、獲取訪問數據庫和偏好等服務。因為Activity類繼承自Context,且因為你的HelloWorld類是Activity的子類,它也是一個Context。因此,你可以傳遞this作為你的Context給ImageView引用。
Android ImageView如何加載網絡圖片資源,代碼也分享給大家:
package com.android.antking.imageview;
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.util.Log;
import android.view.View;
import android.widget.ImageView;
public class MainActivity extends Activity {
//定義一個圖片顯示控件
private ImageView imageView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//圖片資源
String url = "/orignal/89429f6dhb99b4903ebcf&690";
//得到可用的圖片
Bitmap bitmap = getHttpBitmap(url);
imageView = (ImageView)this.findViewById(R.id.imageViewId);
//顯示
imageView.setImageBitmap(bitmap);
}
/**
* 獲取網落圖片資源
* @param url
* @return
*/
public static Bitmap getHttpBitmap(String url){
URL myFileURL;
Bitmap bitmap=null;
try{
myFileURL = new URL(url);
//獲得連接
HttpURLConnection conn=(HttpURLConnection)myFileURL.openConnection();
//設置超時時間為6000毫秒,conn.setConnectionTiem(0);表示沒有時間限制
conn.setConnectTimeout(6000);
//連接設置獲得數據流
conn.setDoInput(true);
//不使用緩存
conn.setUseCaches(false);
//這句可有可無,沒有影響
//conn.connect();
//得到數據流
InputStream is = conn.getInputStream();
//解析得到圖片
bitmap = BitmapFactory.decodeStream(is);
//關閉數據流
is.close();
}catch(Exception e){
e.printStackTrace();
}
return bitmap;
}
}
以上就是本文的全部內容,希望能給大家一個參考,也希望大家多多支持本站。
RecyclerView下拉刷新上拉加載
一 、前言最近實在太忙,一個多禮拜沒有更新文章了,於是今晚加班加點把demo寫出來,現在都12點了才開始寫文章。1.我們的目標把RecyclerView下拉刷新上拉加載更
Android中WebView無法後退和js注入漏洞的解決方案
因重定向無法正常goBack()解決方案首先說下問題,初始頁面為A,點擊某個鏈接跳轉到B(http://xxx.com.cn/),B頁面重定向到C頁面(http://xx
使用okhttp3做Android圖片框架Picasso的下載器和緩存器
最近項目裡把圖片加載框架從xUtils換到了Picasso,一些下載和緩存的策略也因此發生變化,Picasso的緩存沒有xUtils自動化那麼高,使用起來遇到了一些困難,
Android中的設計模式-單例模式
Android中的設計模式-單例模式單例模式算是比較常用的模式,在Java中如果想要一個JVM中只存在某個類的一個實例,就需要使用到單例模式,而只存在一個實例的需求一般是