求解 android 图片点击一下就放大到全屏,再点一下就回到原界面,这个android源码谁有呢?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求解 android 图片点击一下就放大到全屏,再点一下就回到原界面,这个android源码谁有呢?相关的知识,希望对你有一定的参考价值。
参考技术A package com.pic;import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.os.Bundle;
import android.view.Display;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.widget.ImageView;
public class TestanroidpicActivity extends Activity
/** Called when the activity is first created. */
Bitmap bp=null;
ImageView imageview;
float scaleWidth;
float scaleHeight;
int h;
boolean num=false;
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Display display=getWindowManager().getDefaultDisplay();
imageview=(ImageView)findViewById(R.id.imageview);
bp=BitmapFactory.decodeResource(getResources(),R.drawable.icon);
int width=bp.getWidth();
int height=bp.getHeight();
int w=display.getWidth();
int h=display.getHeight();
scaleWidth=((float)w)/width;
scaleHeight=((float)h)/height;
imageview.setImageBitmap(bp);
@Override
public boolean onTouchEvent(MotionEvent event)
switch(event.getAction())
case MotionEvent.ACTION_DOWN:
if(num==true)
Matrix matrix=new Matrix();
matrix.postScale(scaleWidth,scaleHeight);
Bitmap newBitmap=Bitmap.createBitmap(bp, 0, 0, bp.getWidth(), bp.getHeight(), matrix, true);
imageview.setImageBitmap(newBitmap);
num=false;
else
Matrix matrix=new Matrix();
matrix.postScale(1.0f,1.0f);
Bitmap newBitmap=Bitmap.createBitmap(bp, 0, 0, bp.getWidth(), bp.getHeight(), matrix, true);
imageview.setImageBitmap(newBitmap);
num=true;
break;
return super.onTouchEvent(event);
参考技术B android官网有啊 参考技术C 用ImageView 然后放大,监听touch事件,读出屏幕的分辨率尺寸,然后将读出的尺寸通过参数传到放大的方法中, 然后再监听到touch后,还原就可以了。你查下ImageView或者Drawable的放大缩小方法,看看哪个方法的参数有要传上下左右边界的。网上好多这样的例子
区分点击和滚动 - iOS
【中文标题】区分点击和滚动 - iOS【英文标题】:Differentiate between tap and scroll - iOS 【发布时间】:2012-07-26 22:00:17 【问题描述】:我将图像嵌入到 UIScrollView 对象中。 scrollView 的方向仅是水平滚动,并且启用分页以一次滚动一张图片。当用户单击图像时(例如在 Facebook 上),我希望能够通过另一个类使图像全屏显示。问题是,我如何区分点击图像和滚动?我希望它在用户平移视图时滚动并在他们点击它时放大到全屏视图。有什么建议吗?
【问题讨论】:
【参考方案1】:将标签手势识别器添加到您的UIScrollView
对象,并通过它捕获点击手势。
这是向视图添加点击识别器的方式:
UITapGestureRecognizer * recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onTap:)];
recognizer.delegate = self;
[myScrollView addGestureRecognizer:recognizer];
这是onTap
方法签名的样子:
- (IBAction)onTap:(UIPanGestureRecognizer *)recognizer
// Make image show up full screen
【讨论】:
没有理由不应该。如果您需要对平移进行精细控制,您可以在UITapGestureRecognizer
的顶部添加 UIPanGestureRecognizer
。以上是关于求解 android 图片点击一下就放大到全屏,再点一下就回到原界面,这个android源码谁有呢?的主要内容,如果未能解决你的问题,请参考以下文章