- 浏览: 248965 次
- 性别:
- 来自: 湖南
最新评论
-
KANGOD:
android:overScrollMode="ne ...
去掉ScrollVIew拉到尽头时再拉的阴影效果 -
yangsongjing:
comsci 写道非常感谢.....希望大家的代码和文档都能够 ...
java DES 加密解密 算法 -
comsci:
非常感谢.....
希望大家的代码和文档都能够用一种简单的方 ...
java DES 加密解密 算法 -
yangsongjing:
不过2.3以下的版本没这个方法怎么解决啊?
去掉android scrollview滚动到顶部继续滚会出现一个渐变的颜色块 -
yangsongjing:
setOverScrollMode(View.OVER_SCR ...
去掉android scrollview滚动到顶部继续滚会出现一个渐变的颜色块
拖拽图片效果
方法一:
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageView;
public class DragSample01 extends Activity {
ImageView img;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.drag_sample01);
img = (ImageView)findViewById(R.id.img_view);
img.setOnTouchListener(new OnTouchListener(){
private int mx, my;
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()) {
case MotionEvent.ACTION_MOVE:
mx = (int)(event.getRawX());
my = (int)(event.getRawY() - 50);
v.layout(mx - img.getWidth()/2, my - img.getHeight()/2, mx + img.getWidth()/2, my + img.getHeight()/2);
break;
}
return true;
}});
}
}
方法二:
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageView;
public class DragSample01 extends Activity {
ImageView img;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.drag_sample01);
img = (ImageView)findViewById(R.id.img_view);
img.setOnTouchListener(new OnTouchListener(){
private float x, y;
private int mx, my;
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
x = event.getX();
y = event.getY();
case MotionEvent.ACTION_MOVE:
mx = (int)(event.getRawX() - x);
my = (int)(event.getRawY() - 50 - y);
v.layout(mx, my, mx + v.getWidth(), my + v.getHeight());
break;
}
return true;
}});
}
}
//////////------------------
拖拽图片效果
方法一:
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageView;
public class DragSample01 extends Activity {
ImageView img;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.drag_sample01);
img = (ImageView)findViewById(R.id.img_view);
img.setOnTouchListener(new OnTouchListener(){
private int mx, my;
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()) {
case MotionEvent.ACTION_MOVE:
mx = (int)(event.getRawX());
my = (int)(event.getRawY() - 50);
v.layout(mx - img.getWidth()/2, my - img.getHeight()/2, mx + img.getWidth()/2, my + img.getHeight()/2);
break;
}
return true;
}});
}
}
方法二:
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageView;
public class DragSample01 extends Activity {
ImageView img;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.drag_sample01);
img = (ImageView)findViewById(R.id.img_view);
img.setOnTouchListener(new OnTouchListener(){
private float x, y;
private int mx, my;
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
x = event.getX();
y = event.getY();
case MotionEvent.ACTION_MOVE:
mx = (int)(event.getRawX() - x);
my = (int)(event.getRawY() - 50 - y);
v.layout(mx, my, mx + v.getWidth(), my + v.getHeight());
break;
}
return true;
}});
}
}
拖动按钮到处跑
1. 布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button android:id="@+id/btn" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="拖动看看~~" />
</LinearLayout>
2. 代码
import android.app.Activity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.Button;
public class DraftTest extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button btn = (Button) findViewById(R.id.btn);
btn.setOnTouchListener(new OnTouchListener() {
int[] temp = new int[] { 0, 0 };
public boolean onTouch(View v, MotionEvent event) {
int eventaction = event.getAction();
int x = (int) event.getRawX();
int y = (int) event.getRawY();
switch (eventaction) {
case MotionEvent.ACTION_DOWN: // touch down so check if the
temp[0] = (int) event.getX();
temp[1] = y - v.getTop();
break;
case MotionEvent.ACTION_MOVE: // touch drag with the ball
v.layout(x - temp[0], y - temp[1], x + v.getWidth()
- temp[0], y - temp[1] + v.getHeight());
// v.postInvalidate();
break;
case MotionEvent.ACTION_UP:
break;
}
return false;
}
});
}
}
另一种:
import android.app.Activity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.Button;
public class DraftTest extends Activity {
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
DisplayMetrics dm = getResources().getDisplayMetrics();
final int screenWidth = dm.widthPixels;
final int screenHeight = dm.heightPixels - 50;
final Button b = (Button) findViewById(R.id.btn);
b.setOnTouchListener(new OnTouchListener() {
int lastX, lastY;
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
lastX = (int) event.getRawX();
lastY = (int) event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
int dx = (int) event.getRawX() - lastX;
int dy = (int) event.getRawY() - lastY;
int left = v.getLeft() + dx;
int top = v.getTop() + dy;
int right = v.getRight() + dx;
int bottom = v.getBottom() + dy;
if (left < 0) {
left = 0;
right = left + v.getWidth();
}
if (right > screenWidth) {
right = screenWidth;
left = right - v.getWidth();
}
if (top < 0) {
top = 0;
bottom = top + v.getHeight();
}
if (bottom > screenHeight) {
bottom = screenHeight;
top = bottom - v.getHeight();
}
v.layout(left, top, right, bottom);
lastX = (int) event.getRawX();
lastY = (int) event.getRawY();
break;
case MotionEvent.ACTION_UP:
break;
}
return false;
}
});
}
}
发表评论
-
获取sha1
2018-07-18 16:03 672keytool -list -v -keystore /Use ... -
获取手机通话记录
2017-11-30 17:28 0/** * 读取数据 * * @ ... -
安卓打包加固自动化
2017-06-03 15:10 0惠农安卓打包后远程加固(阿里服务)支持工具: 由于远程调用阿里 ... -
阿里百川HotFix接入指南
2017-04-11 14:46 1561阿里百川HotFix接入指南 1.首先需要成为阿里开放平台的开 ... -
android 6.0权限
2016-08-29 08:44 627从Android 6.0开始, 用户需要在运行时请求权限, 本 ... -
2016 的一些android新技术
2016-08-04 16:31 425转:2016你需要了解Android有以下新兴的技术与框架,有 ... -
安卓应用每次从后台切换到前台都会启动欢迎界面的问题
2016-07-15 09:18 2809问题描述: 应用安装后,通过安装界面的打开按钮打开应用,每当应 ... -
android性能分析工具整理
2016-03-28 22:57 719原文链接:http://www.jians ... -
android 技术经验归纳
2016-03-28 22:54 5171.android基于java,java的抽象封装要会用,并且 ... -
android面试提问
2015-11-16 11:54 0一。登录过程中需要取消登录 怎么中断连接 1)如果用httpc ... -
android 集成百度地图路线规划
2015-05-26 11:21 8911.创建应用 包名需和应用一致 2.还需要填写安全码 = sh ... -
android 手机判断是否在充电 如断电自动打电话提醒功能
2015-05-18 11:14 3330public class MainActivity exten ... -
ANDROID应用安全防御
2015-04-02 10:06 1282Android应用的安全隐患包括三个方面:代码安全、数据安全和 ... -
Fragment加入Pagerview效果
2015-04-01 14:50 492转自 http://www.eoeandroid.com/t ... -
android性能优化
2015-03-30 10:59 24051.采用硬件加速,在androidmanifest.xml ... -
设计模式记忆方法(转)
2015-03-11 10:20 870设计模式的分类 创建型。 情景记忆:两个人在聊天。 ... -
android 数据库版本升级
2015-03-03 16:41 738数据库升级的意义 我 ... -
java 23种设计模式示例代码集合
2015-02-09 09:40 712策略模式,建造者模式,简单工厂模式,单例模式,抽象工厂模式 ... -
scrollview里面套listview 滑动事件问题
2014-08-08 15:43 866里面的listview放这个就行了。 package com ... -
int 和byte数组之间的转换
2014-08-06 17:52 930public byte[] intToByte(int i ...
相关推荐
在JavaScript(JS)中实现图片拖动效果是网页交互中常见的功能之一,它极大地提升了用户体验。这个技术主要涉及HTML、CSS以及JavaScript的核心概念,包括事件处理、DOM操作和坐标计算。接下来,我们将深入探讨如何...
这个"android 图片拖拽效果"项目提供了一个详细实现图片拖动功能的源码,使用者可以将其直接导入到自己的Android项目中进行研究和使用。 在Android中,实现图片拖拽通常涉及到以下几个关键知识点: 1. **...
在Android应用开发中,实现图片拖拽效果是一个常见的需求,特别是在设计交互丰富的用户界面时。本文将基于提供的“Android开发之google源码——图片拖拽效果的实现”资源,深入探讨如何在Android平台上创建这样的...
在JavaScript中实现图片拖动效果是一项常见的交互设计技术,它能增强用户在网页上的操作体验。这个技术主要基于HTML5的拖放API(Drag and Drop API),通过JavaScript事件监听和处理来实现。以下是对这一技术的详细...
在JavaScript编程中,实现图片拖拽效果以及列表图片的拖拽排序是一项常见且实用的技术。这一功能常用于创建用户友好的交互式应用,比如在线相册、任务管理器或者自定义布局的界面。本篇文章将深入探讨如何使用...
在Android开发中,实现图片拖动效果是一项基本且有趣的功能,它可以带给用户直观、互动的体验。本教程将深入探讨如何在Android应用中创建类似iPhone的图片拖动效果。 首先,我们需要了解Android中的触摸事件处理...
在本文中,我们将深入探讨如何使用jQuery库来实现一个九宫格图片拖动效果,让图片可以在网格中自由拖拽并排序。这个功能通常应用于图片展示、拼图游戏或者个性化布局的设计中,能够提供用户友好的交互体验。 首先,...
在网页开发中,实现动态交互效果能够极大地提升用户体验。...通过理解并运用这些基本原理,开发者可以扩展这个功能,使其适应更复杂的场景,比如限制图片拖动范围、实现多图拖拽或者添加拖放事件回调等功能。
在Android开发中,实现图片拖拽效果是一项常见的需求,它能为用户带来更直观和交互式的体验。这个压缩包文件“Android图片拖拽效果代码.zip”包含了一个示例项目,展示了如何在Android应用中实现这一功能。下面我们...
在Android开发中,实现图片拖动效果,如“Gallery”组件,是一种常见的需求,它可以为用户提供流畅的图片浏览体验。Gallery是Android SDK提供的一种水平滚动的视图组件,用户可以通过左右滑动来浏览图片,类似于iOS...
下面我们将深入探讨`Gallery`控件的工作原理、使用方法以及如何创建图片拖动效果。 ### 1. `Gallery`控件概述 `Gallery`控件是Android SDK中的一个`ViewGroup`,继承自`AbsSpinner`,它允许用户水平滚动一系列的...
### Android 图片拖动效果详解 #### 一、概述 在移动应用开发中,提供直观易用的用户界面是提升用户体验的重要因素之一。本篇文章主要介绍如何在Android应用中实现类似iPhone上的图片拖动效果。这种效果允许用户...
### JavaScript 实现简单图片拖拽效果 #### 一、引言 在Web开发中,交互式体验对于提升用户界面友好度至关重要。其中一项常见的交互功能就是拖拽效果,特别是图片的拖拽。本文将深入探讨如何使用原生JavaScript来...
Android安卓代码模拟Iphone图片拖动效果,似乎这个效果Android原生系统中就有啊,就是用手指滑来滑去拖动图片的效果,在Android中,我是自己写代码实现的,也算是对苹果IOS中的图片拖动进行了一个模拟。 注:部分...
这段代码实现了一个功能,即让网页中的图片具备可拖动的效果。主要涉及到HTML、CSS和JavaScript三方面的知识。 首先,我们来看HTML部分。在这里,只有一个`<img>`标签用于显示图片,其`src`属性指定了图片的路径,`...
DraggableView GridView项目拖拽效果, 自顶一个SampleGridContainer 集成FrameLayout实现 DragController.IDragViewGroup ,里面主要提供了onDragStart ,onDragEnd,onMoveEvent 等几个方法实现拖拽效果
简单的图片任意拖拽效果,任意拖拽到任意位置,代码简单 易懂
- 使用CSS的`transition`属性或JavaScript的`requestAnimationFrame`来实现平滑的动画效果,使图片拖动更流畅。 8. **代码组织**: - 良好的代码组织和模块化设计,例如将拖拽逻辑封装成一个独立的函数或类,便于...
【标题】"仿360鼠标拖动图片切换效果"涉及的是在Qt环境中实现一个类似于360浏览器图片浏览的交互功能,通过鼠标拖动来实现图片的平滑切换,并结合了Mac系统的动画效果,给予用户更为流畅和自然的操作体验。...
在实现图片拖动功能时,最常用的是`Image`控件,它可以显示图像。我们要做的就是赋予这个`Image`控件拖放的能力。 1. **创建WPF项目** 首先,创建一个新的WPF应用程序项目。在Visual Studio中,选择“文件”>...