详解Android读取本地图片和网络图片的方法
Android读取本地图片和网络图片:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageView image = (ImageView) findViewById(R.myImage.imageview);
//Bitmap bitmap = getLoacalBitmap(“/images/1.jpg”); //从本地取图片
Bitmap bitmap = getHttpBitmap(“http://t1.baidu.com/it/u=1966865594,1522122112&fm=52&gp=0.jpg”); //从网上取图片
image .setImageBitmap(bitmap); //设置Bitmap
}
/**
* 加载本地图片
* @param url
* @return
*/
public static Bitmap getLoacalBitmap(String url) {
try {
FileInputStream fis = new FileInputStream(url);
return BitmapFactory.decodeStream(fis);
} catch (FileNotFoundException e) {
e.printStackTrace();
return null;
}
}
/**
* 加载网络图片
* @param url
* @return
*/
public static Bitmap getHttpBitmap(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.setConnectTimeout(0);
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();
bitmap = BitmapFactory.decodeStream(is);
is.close();
} catch (IOException e) {
e.printStackTrace();
}
return bitmap;
}
注意:在AndroidManifest.xml文件的节点上面添加
/>,这是由于Android有很多的权限限制,否则图片是不能在你的模拟器上显示的。
更多相关文章
- android 用tcpdump抓取网络包
- android:获取网络时间、文件路径,修改包名,发布release版本
- Android 10 获取相册图片失败
- Android图片旋转实例
- Android获取图片Uri/path
- 【Android随记】-- Android动态加载布局
- android在service中使用AsyncHttpClient加载网络资源
- android 网络语音电话合集 此文为备份
- android 网络异步加载数据进度条