- 浏览: 245748 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
江恂泽:
楼主 这家伙会把data 拆分开来 转换成day year形 ...
JsonUtil -
mdsp25xhm:
为何没有列表查询功能?
myBatis DAO封装
private ImageView big_image;
/*
* 原图片宽 原图片高
*/
private int primary_width, primary_height;
/*
* 高宽比例
*/
private double scaleWidth = 1, scaleHeight = 1;
private Bitmap bitmap;
float scale = 0.2f;
private Button big_button, small_button;
@Override
protected void onCreate(Bundle instance)
{
super.onCreate(instance);
setContentView(R.layout.big);
initResource();
setListener();
}
private void setListener()
{
big_button.setOnClickListener(big_button_listener);
small_button.setOnClickListener(small_button_listener);
}
private OnClickListener big_button_listener = new OnClickListener()
{
@Override
public void onClick(View view)
{
scale(1.25,1.25);
}
};
private OnClickListener small_button_listener = new OnClickListener()
{
@Override
public void onClick(View view)
{
scale(0.8,0.8);
}
};
private void initResource()
{
big_button = (Button) findViewById(R.id.big_button);
small_button = (Button) findViewById(R.id.small_button);
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.c1);
primary_width = bitmap.getWidth();
primary_height = bitmap.getHeight();
big_image = (ImageView) findViewById(R.id.big_image);
big_image.setImageBitmap(bitmap);
}
private void scale(double scale_width, double scale_height)
{
Display display = getWindowManager().getDefaultDisplay();
big_image = (ImageView) findViewById(R.id.big_image);
int re_width = big_image.getWidth();
int re_height = big_image.getHeight();
if((scale_width > 1 && scaleWidth * re_width >= display.getWidth()) ||
(scale_height > 1 && scaleHeight * re_height >= display.getHeight()))
{
big_button.setEnabled(false);
}
else
{
big_button.setEnabled(true);
}
scaleWidth = scaleWidth * scale_width;
scaleHeight = scaleHeight * scale_height;
/*
* 矩阵,用于图片比例缩放
*/
Matrix matrix = new Matrix();
/*
* 设置高宽比例(三维矩阵)
*/
matrix.postScale((float)scaleWidth, (float)scaleHeight);
/*
* 参数说明:
* Bitmap source:要从中截图的原始位图
* int x:起始x坐标
* int y:起始y坐标
* int width:要截的图的宽度
* int height:要截的图的宽度
* boolean filter:
* 返回值:返回一个剪切好的Bitmap
*/
Bitmap newBmp = Bitmap.createBitmap(bitmap, 0, 0, primary_width, primary_height, matrix, true);
big_image.setImageBitmap(newBmp);
}
/*
* 原图片宽 原图片高
*/
private int primary_width, primary_height;
/*
* 高宽比例
*/
private double scaleWidth = 1, scaleHeight = 1;
private Bitmap bitmap;
float scale = 0.2f;
private Button big_button, small_button;
@Override
protected void onCreate(Bundle instance)
{
super.onCreate(instance);
setContentView(R.layout.big);
initResource();
setListener();
}
private void setListener()
{
big_button.setOnClickListener(big_button_listener);
small_button.setOnClickListener(small_button_listener);
}
private OnClickListener big_button_listener = new OnClickListener()
{
@Override
public void onClick(View view)
{
scale(1.25,1.25);
}
};
private OnClickListener small_button_listener = new OnClickListener()
{
@Override
public void onClick(View view)
{
scale(0.8,0.8);
}
};
private void initResource()
{
big_button = (Button) findViewById(R.id.big_button);
small_button = (Button) findViewById(R.id.small_button);
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.c1);
primary_width = bitmap.getWidth();
primary_height = bitmap.getHeight();
big_image = (ImageView) findViewById(R.id.big_image);
big_image.setImageBitmap(bitmap);
}
private void scale(double scale_width, double scale_height)
{
Display display = getWindowManager().getDefaultDisplay();
big_image = (ImageView) findViewById(R.id.big_image);
int re_width = big_image.getWidth();
int re_height = big_image.getHeight();
if((scale_width > 1 && scaleWidth * re_width >= display.getWidth()) ||
(scale_height > 1 && scaleHeight * re_height >= display.getHeight()))
{
big_button.setEnabled(false);
}
else
{
big_button.setEnabled(true);
}
scaleWidth = scaleWidth * scale_width;
scaleHeight = scaleHeight * scale_height;
/*
* 矩阵,用于图片比例缩放
*/
Matrix matrix = new Matrix();
/*
* 设置高宽比例(三维矩阵)
*/
matrix.postScale((float)scaleWidth, (float)scaleHeight);
/*
* 参数说明:
* Bitmap source:要从中截图的原始位图
* int x:起始x坐标
* int y:起始y坐标
* int width:要截的图的宽度
* int height:要截的图的宽度
* boolean filter:
* 返回值:返回一个剪切好的Bitmap
*/
Bitmap newBmp = Bitmap.createBitmap(bitmap, 0, 0, primary_width, primary_height, matrix, true);
big_image.setImageBitmap(newBmp);
}
发表评论
-
IMF简介-2
2013-07-09 17:56 891InputManager 由UI控件(View,TextVie ... -
IMF简介-1
2013-07-09 17:51 814Input Method Framework 目录 ... -
输入法 总结-3
2013-07-08 15:02 851public class MainActivity exten ... -
输入法 总结-4
2013-07-04 17:29 935public class InputActivity exte ... -
输入法 总结-3
2013-07-04 17:28 859public class InputApplication e ... -
输入法 总结-2
2013-07-04 17:23 775openwnn_pref_ja.xml <?xml v ... -
输入法 总结-2
2013-07-04 17:21 13openwnn_pref_ja.xml <?xml v ... -
输入法 总结-1
2013-07-04 17:19 794<application android ... -
Android快捷键
2013-03-15 14:39 818Home键(小房子键) 在 ... -
如何通过wifi调试android程序
2013-02-27 15:48 762android手机居然可以通过wifi进行程序的调试,太好了, ... -
Please ensure that adb is correctly located at 'D:\android-sdk-windows\platform-
2013-02-27 14:27 1654adt 出现ADB server didn't ACK, fa ... -
Android AsyncTask
2013-02-19 09:35 1117AsyncTask是抽象类,子类 ... -
Android ViewPager 左右滑动2-1
2013-01-29 10:12 1484public class PagerActivity exte ... -
Android ViewPager 左右滑动-3
2013-01-29 10:10 1098<?xml version="1.0" ... -
Android ViewPager 左右滑动-2
2013-01-29 10:10 1461/*** * 选中效果 */ pu ... -
Android ViewPager 左右滑动-1
2013-01-29 10:09 1379Store extends ActivityGroup imp ... -
Android 下载
2013-01-27 00:59 907下载apk程序代码 protected File downLo ... -
Android SDCard操作-3
2013-01-26 18:31 881public static Intent getVid ... -
Android SDCard操作-2
2013-01-26 18:30 1108/** * 判断该应用在手机中的安装情况 ... -
Android SDCard操作-1
2013-01-26 18:27 1044private static int INSTALLED = ...
相关推荐
在Android开发中,实现图片随手势放大...总的来说,Android图片随手势放大缩小功能的实现涉及了Android事件处理、手势识别、图像变换等多个技术点,通过巧妙地组合和优化,可以为用户提供直观且舒适的图片浏览体验。
Android实现图片手势缩放、移动、双击放大缩小。
这个名为"Android-一个Android图片缩放查看控件支持手势"的项目,旨在提供一个自定义的视图控件,它允许用户通过手势进行图片的放大、缩小以及平移操作,提升用户体验。下面我们将深入探讨这个控件的关键知识点和...
总的来说,Android图片的放大缩小涉及到了Bitmap的创建、解码、缩放,以及多点触控手势的处理。理解并掌握这些知识点,可以让你在开发过程中更加游刃有余,提供给用户更好的图片浏览体验。在实际开发中,要兼顾性能...
在Android开发中,实现图片的放大缩小功能以及多触点缩放是一项常见的需求,尤其在设计用户界面或者处理图像应用时。本节我们将详细探讨如何在Android应用中实现实现这个功能,主要围绕以下几个关键知识点: 1. **...
总结来说,这个“Android图片放大缩小旋转完美demo”涵盖了Android图片处理的核心技术,包括手势识别、Matrix变换、ViewPager的使用以及网络图片加载。通过学习和理解这个demo,开发者可以更好地掌握Android中图片的...
在Android开发中,图片的放大和缩小...总的来说,Android图片放大缩小和多触屏的支持涉及到触摸事件处理、Matrix变换以及手势识别等多个知识点。通过理解这些概念并结合实际代码,可以创建出功能完善的图像查看组件。
综上所述,通过结合SurfaceView、手势检测和矩阵变换,我们可以实现在Android应用中对图片的流畅缩放和滑动操作。然而,由于SurfaceView的特性,这个过程可能会比使用ImageView等其他组件更为复杂。因此,开发者需要...
这两个类可以帮助我们识别用户的捏合和滑动操作,从而实现图片的放大和缩小以及平移。 ```java public class CustomImageView extends ImageView { private ScaleGestureDetector scaleGestureDetector; public ...
Android图片放大缩小操作范例,单击对应的按钮,可将一张图片进行放大或缩小显示,实现的步骤大概是: 取得屏幕分辨率大小 ,对获取到的屏幕高度扣除下方Button高度,定义缩小按钮onClickListener 和...
通过学习和实践这个“android 图片放大缩小移动 demo”项目,开发者不仅可以掌握图片处理的基本技巧,还能进一步理解Android手势检测、自定义View和动画系统的工作原理,对提升Android应用的交互性和用户体验有着...
9. **动画效果**: 除了静态的放大缩小,还可以通过Animation类或ObjectAnimator实现平滑的缩放动画效果,增强用户体验。 10. **性能考量**: 当处理大量图片或高分辨率图片时,要注意内存管理,合理使用Bitmap的配置...
2. **手势识别**: 实现图片的放大缩小,我们需要使用Android的手势库(`android.gesture`),特别是` GestureDetector`和` ScaleGestureDetector`。`GestureDetector`用于识别单击、双击等基本手势,而`...
这份"android应用源码图片放大缩小旋转涂鸦源码.zip"提供了完整的源代码,可以作为学习和设计此类应用的参考。以下是基于这个源码包可能涉及到的关键知识点: 1. **图片加载库**:在Android中,高效地加载和显示...
在Android开发中,实现图片的放大缩小功能是常见的需求,特别是在设计相册或者查看图片的应用中。本Demo主要展示了如何在Android环境中实现这样的功能,既支持网络图片的加载,也支持本地图片的显示,并允许用户进行...
在Android开发中,实现手势放大缩小图片是一项常见的需求,它能提供用户更加直观和自由的交互体验。本文将深入探讨如何在Android应用中实现在ImageView上添加手势缩放功能,并支持图片的拖动操作。 首先,我们需要...
以上就是实现Android图片浏览、放大缩小和平移的核心技术点。在实际开发中,还需要注意性能优化,比如使用异步加载图片、处理内存泄漏等,以提供流畅的用户体验。在项目`MyApplication`中,你可以找到具体的代码实现...
在Android开发中,实现图片随手势放大缩小的功能是一项常见的需求,尤其在查看照片、阅读电子书或使用图像编辑应用时。这项技术的核心是利用Android提供的触摸事件处理机制和矩阵操作来改变图片的缩放比例。以下将...
因此,通常会使用图片加载库,如Glide、Picasso或 Fresco,它们能进行图片的内存和磁盘缓存管理,并支持按需加载和缩放图片,减少内存占用。 7. **性能优化**: 当图片过大时,需要考虑使用`BitmapFactory.Options...
本文将深入探讨如何实现“Android图片多点放大缩小移动”这一功能,结合给定的描述和标签,我们将关注以下几个核心知识点: 1. **多点触控(Multi-Touch)**: 多点触控是指设备能够同时识别并处理两个或更多触摸...