


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】Android中怎么实现图片压缩并加载显示
这篇文章将为大家详细讲解有关Android中怎么实现图片压缩并加载显示,文章内容质量较高,因此在下分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。解析:图片压缩的关键就是options.inSampleSize
=
scale;如果scale>0,表示图片进行了压缩/**
*
压缩图片
*
@author
chen.lin
*
*/
public
class
LoadImageActivity
extends
Activity
implements
OnClickListener
{
private
Button
mBtnLoad;
private
ImageView
mImageView;
@Override
protected
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_image_load);
initViews();
}
private
void
initViews()
{
mBtnLoad
=
(Button)
findViewById(R.id.btnLoadImage);
mImageView
=
(ImageView)
findViewById(R.id.imageView);
mBtnLoad.setOnClickListener(this);
}
@Override
public
void
onClick(View
v)
{
if
(v
==
mBtnLoad)
{
Options
options
=
new
Options();
BitmapFactory.decodeFile("/sdcard/images/1.jpg",
options);
//不去真的解析图片,只是获取图片的头部信息,宽高
options.inJustDecodeBounds
=
true;
//得到图片的真实宽高
int
imageHeight
=
options.outHeight;
int
imageWidth
=
options.outWidth;
//得到屏幕的宽高
WindowManager
wm
=
(WindowManager)
getSystemService(WINDOW_SERVICE);
int
screenHeight
=
wm.getDefaultDisplay().getHeight();
int
screenWidth
=
wm.getDefaultDisplay().getWidth();
//得到缩放比例
int
scale
=
1;
int
scaleX
=
imageWidth
/
screenWidth;
int
scaleY
=
imageHeight
/
screenHeight;
if
(scaleX
>
scaleY
&
scaleX
>=1)
{//表示如果宽的缩放比例大于高的,并且scaleX>=1都为true
scale
=
scaleX;
}
if
(scaleY
>
scaleX
&
scaleY
>=1)
{//表示如果高的缩放比例大于宽的,并且scaleY>=1都为true
scale
=
scaleY;
}
//解析图片
options.inJustDecodeBounds
=
false;
//修改图片的缩放比例,如果scale=4说明图片缩小4倍,像数=1/16
options.inSampleSize
=
scale;
Bitmap
bm
=
BitmapFactory.decodeFile("/sdcard/images/1.jpg",
options);
mImageView.setImageBitmap(bm);
}
}
}布局文件<?xml
version="1.0"
encoding="utf-8"?>
<LinearLayout
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<ImageView
android:id="@+id/imageView"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
/>
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
>
<requestFocus
/>
</EditText>
<Button
android:id="@+id/btnLoadImage"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="lo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广播电视节目制作中的编剧策略考核试卷
- 信托公司财务风险分析与控制考核试卷
- 疫情网课班会课件小学生
- 塑料薄膜在户外运动装备的应用考核试卷
- 智能清洁电器的远程监控技术考核试卷
- 机器人传感器数据融合与应用考核试卷
- 苏州恒温配送合同范本
- 土建及市政合同范本
- 拍摄视频制作合同范本
- 毛坯公寓酒店合同范本
- 苏教版科学五年级下15《升旗的方法》教案
- 现代工业发酵调控绪论
- 超高性能混凝土项目立项申请(参考模板)
- 电缆桥架招标文件范本(含技术规范书)
- 试车场各种道路施工方案设计
- 部编版四年级语文下册第二单元《习作:我的奇思妙想》课件PPT
- PS零基础入门学习教程(适合纯小白)PPT课件
- XX输变电工程公司作业风险评估数据库(精品模板)
- 涂装行业常用日语单词集
- 头颈部影像学表现(详细、全面)
- 《国际商务》PPT课件.ppt
评论
0/150
提交评论