`

显示Web图片和SD卡图片

阅读更多

下面是res/layout/show_image.xml

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="match_parent">
  <Button android:id="@+id/show_image_button"
  	android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Show Image"
    />
  <TextView android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="下列图片来自互联网:"
    />
  <ImageView android:id="@+id/web_image"
  	android:layout_width="fill_parent"
    android:layout_height="100dp"
    />
  <TextView android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="下列图片来自SD卡:"
    />
  <ImageView android:id="@+id/sd_image"
  	android:layout_width="fill_parent"
    android:layout_height="100dp"
    />
</LinearLayout>

 

下面是ShowImageActivity.java代码

 

import java.io.IOException;
import java.io.InputStream;

import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.conn.params.ConnRoutePNames;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;

public class ShowImageActivity extends Activity {
	@Override
	public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.show_image);
        Button showButton = (Button)findViewById(R.id.show_image_button);
        showButton.setOnClickListener(new OnClickListener(){
			@Override
			public void onClick(View view) {
				getWebPicture();
				getSDCardPicture();
			}
		});
	}

	private void getWebPicture() {
		HttpGet httpGet = new HttpGet("http://www.2014412.com/wp-content/uploads/2011/04/17-150x150.jpg");
		HttpClient client = getHttpClient();
		Bitmap bitmap = null;
		try {
			HttpResponse res = client.execute(httpGet);
			if (res.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
				HttpEntity entity = res.getEntity();
				InputStream is = entity.getContent();
				bitmap = BitmapFactory.decodeStream(is);
			} else {
				Toast.makeText(this, "网络图片没有取到", Toast.LENGTH_LONG).show();
				return;
			}
		} catch (ClientProtocolException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		ImageView iv = (ImageView)findViewById(R.id.web_image);
		iv.setImageBitmap(bitmap);
	}

	private void getSDCardPicture() {
		String picPath = "/sdcard/pictures/sd_image.jpg";
		Bitmap bitmap = BitmapFactory.decodeFile(picPath);
		ImageView iv = (ImageView)findViewById(R.id.sd_image);
		iv.setImageBitmap(bitmap);
	}

	private HttpClient getHttpClient() {
		//设置HTTP参数(httpParams参数不是必需)
		HttpParams httpParams = new BasicHttpParams();
		HttpConnectionParams.setConnectionTimeout(httpParams, 5000);
		HttpConnectionParams.setSoTimeout(httpParams, 5000);
		HttpConnectionParams.setSocketBufferSize(httpParams, 10240);
		//创建HttpClient
		HttpClient client = new DefaultHttpClient(httpParams);
		//设置代理(如果不需要代理可以不用设置)
		HttpHost proxy = new HttpHost("192.168.190.251",3128);
		client.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
		return client;
	}
}
 

上面代码有个从SD卡取图片的功能。因此,需要放一张图片到模拟器的SD卡中。操作如果

 

#在SD卡中创建目录(如果放在sdcard目录下就不需要创建目录)

打开cmd,依次输入:

adb shell

adb sdcard

mkdir pictures

exit

 

#把文件放入SD卡中

adb push H:\sd_image.jpg /sdcard/pictures

 

注意:不要用下面格式

adb push H:\sd_image.jpg \sdcard\pictures

 

出现以下异常

failed to copy 'H:\sd_image.jpg' to '\sdcard\pictures': Read-only file system

 

原因是第二个参数是Linux目录,应该使用“/”而不是“\”来表示路径

 

 

 

运行结果


当点击Show Image按钮后,显示如下面


 

 

  • 大小: 5.1 KB
  • 大小: 10.9 KB
分享到:
评论

相关推荐

    Gallery从SD卡中获取图片,并显示.zip

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    Super_Backup_Restore_Premium_v2.2.70_build_140.apk

    – 从SD卡还原联系人和SMS和通话记录以及书签和日历 –可以选择要备份的SMS对话 –删除SD卡上的备份数据 –安排自动备份 – 计划安排自动备份文件到您的Google云端硬盘或Gmail中 –可以从Google云端硬盘下载...

    Delphi7 编程 100 实例

    ToolBar工具栏控件的使用 动态建立主菜单选项 窗口界面的动态分隔条 动态设置选项卡页面 在标题栏中自定义按钮 窗体开合窗帘效果 Windows XP界面效果 实现OutLook滚动工具栏效果 在下拉列表...

    Delphi7编程100例

    软件封面的图片显示制作 实现图片的任意角度旋转 奇妙的拼图游戏 使用PaintBox控件制作画图程序 使用DrawGrid控件制作五子棋 多彩的数据报表 按压缩比将BMP转换为JPG 16位真彩转换到256色 调整图片...

    Delphi编程100例

    软件封面的图片显示制作 实现图片的任意角度旋转 奇妙的拼图游戏 使用PaintBox控件制作画图程序 使用DrawGrid控件制作五子棋 多彩的数据报表 按压缩比将BMP转换为JPG 16位真彩转换到256色 调整图片的RGB对比度 实现...

    Google+Android+SDK开发范例大全+第二版源代码7-8

    7.5 加载存储卡的Gallery相簿 7.6 取得手机内置媒体中的图片文件 7.7 相片导航向导与设置背景桌面 7.8 调整音量大小 7.9播放mp3资源文件 7.1 0播放存储卡里的mp3音乐 7.1 1自制录音/播放录音程序 7.1 2通过收到短信...

    《Delphi7编程100例》代码

    ToolBar工具栏控件的使用动态建立主菜单选项窗口界面的动态分隔条动态设置选项卡页面在标题栏中自定义按钮窗体开合窗帘效果Windows XP界面效果实现OutLook滚动工具栏效果在下拉列表框中显示树形视图自定义系统的...

    桃源相册管理系统v2.3

    详细介绍 - [ 桃源相册管理系统 v2.2 官方免费版 ] 《桃源相册管理系统》是一款专业的图片存储展示平台,可用于图片的共享、交流、管理、服务等,适合拥有大量图片的网站,能够独立成站或帮助网站实现图片文件的上传...

    微软UWP开发教程_2263页.pdf

    存储和检索笔划墨迹 添加 InkToolbar 触摸 鼠标 Keyboard 访问键 键盘加速键 键盘事件 适用于键盘、手柄、遥控器和辅助功能工具的焦点导航 编程焦点导航 响应触摸键盘的存在 使用输入范围更改触摸键盘 文本输入 ...

    react-pokemon-searcher-dumbo-web-042318

    React口袋妖怪搜索器React代码挑战实践项目目标: 创建一个显示口袋妖怪“卡片”的索引在卡片中渲染每个宠物小精灵的名字,图片和hp 单击时,存储卡应在显示正面和背面图片之间切换允许用户搜索以缩小页面上显示的...

    EXCEL集成工具箱V6.0

    【综合计算显示】 综合计算并显示选中区域存储格的最大值、最小值、平均值、求和、存储格个数、筛选状态下的的加总求和,以及显示选区包含的数字、字符、汉字的个数等信息。 【GB2转BIG5】 将选中区域存储格的简体...

    老罗android视频开发源码和ppt经典

    十、android存储数据和文件 10.1 android读写sdcard 10.2 SharedPreference共享参数 10.3 android操作数据库一 10.4 android操作数据库二 10.5 android操作数据库三 10.6 android操作数据库四 10.7 android操作...

    StableDiffusion实用插件Image Browsing

    支持独立运行,无需sd - web。 上面是这款插件的官方的介绍,我主要还是使用他的图片管理功能,感觉非常方便。 主要特性: 1. 极佳性能 生成缓存后,图像可以在几毫秒内显示。 默认使用缩略图显示图像,默认大小为256...

    仿小红书前端设计的网页 html css js

    这个项目是一个模仿小红书Web端的应用,包含了以下几个主要功能模块: 1. **主页**: - 采用瀑布流式的卡片布局,展示了用户发布的各种内容。 - 卡片内容丰富多样,包括图片、视频、文字等多种形式。 - 用户可以点击...

    HTMLPack V9.0 (HTML网页课件打包器,HTML课件和三分屏课件加密首选工具)

    2、新增加密后的文件绑定用户移动设备功能,比如U盘、移动硬盘、手机、SD存储卡等,远程自动 绑定,用户使用您的加密文件时插入绑定的移动设备即可,您的用户换系统换硬件无需再授权,极 大的方便了用户和商家,您...

    疯狂Android讲义源码

     1.3.7 使用mksdcard管理虚拟SD卡 19  1.4 开始第一个Android应用 20  1.4.1 使用Eclipse开发第一个  Android应用 20  1.4.2 通过ADT运行Android应用 23  1.5 Android应用结构分析 24  1.5.1 创建一个Android...

    疯狂Android讲义.part1

    1.3.7 使用mksdcard管理虚拟SD卡 19 1.4 开始第一个Android应用 20 1.4.1 使用Eclipse开发第一个 Android应用 20 1.4.2 通过ADT运行Android应用 23 1.5 Android应用结构分析 24 1.5.1 创建一个Android应用 24 1.5.2 ...

    google android sdk开发范例大全 第二版 PDF 光盘代码

     7.5 加载存储卡的Gallery相簿   7.6 取得手机内置媒体中的图片文件   7.7 相片导航向导与设置背景桌面   7.8 调整音量大小   7.9 播放mp3资源文件   7.10 播放存储卡里的mp3音乐   7.11 ...

Global site tag (gtag.js) - Google Analytics