这个简单的代码段可以熟悉getX(),getRawX()等方法,实现按钮的拖动效果:
package com.example;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
public class ButtonDrag 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_hello);
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:
temp[0] = (int) event.getX();
temp[1] = (int) event.getY();
break;
case MotionEvent.ACTION_MOVE:
v.layout(x - temp[0], y - temp[1], x + v.getWidth()
- temp[0], y + v.getHeight() - temp[1]);
// run in non_UI thread
v.postInvalidate();
break;
case MotionEvent.ACTION_UP:
break;
}
return false;
}
});
}
}
分享到:
相关推荐
本项目"安卓Android源码——拖动Button显示效果.zip"聚焦于如何通过编程技术让Button控件在用户的手势操作下产生独特的视觉反馈。在深入探讨这个主题之前,我们需要了解Android开发的基本知识,包括Activity、布局...
以上就是实现Android Button拖动显示效果的基本步骤。在提供的源码包testDraft中,可能包含了具体的实现代码,你可以通过阅读和分析代码来进一步理解这一功能的实现细节。记住,实践是最好的老师,动手编写和调试...
在这个名为"ios-button点击切换.zip"的压缩包中,我们主要关注如何通过点击按钮来实现两个核心功能:页面切换和图片切换。下面将详细阐述这两个知识点。 首先,我们来讨论点击按钮切换页面。在iOS开发中,通常使用...
在iOS开发中,实现“拖动button进行移动”的功能,主要涉及到UIControl的触控事件处理和视图的动画操作。下面将详细讲解这个过程,以及如何将其应用到其他控件上。 首先,`UIButton`是苹果提供的一个基础UI元素,...
为了实现拖拽效果,我们需要创建一个可交互的UI对象,如Image或Button,并为其添加Interactable属性,使其对用户的触摸或鼠标点击有响应。 接着,我们需要编写C#脚本来处理拖放逻辑。Unity支持C#作为主要的编程语言...
标题 "Delphi 自由拖动Button" 涉及到的是 Delphi 编程环境中一个特定的用户界面交互功能,即允许用户在运行时...在实际编程中,开发者可以根据自己的需求调整和优化这些代码,例如添加动画效果、处理多按钮拖动等。
在Android开发中,实现“拖动Button显示效果”通常涉及到触摸事件处理、动画效果和自定义View等技术。本文将深入探讨如何通过Android源码理解并实现这一功能。 首先,我们要明白Android中的触摸事件处理机制。当...
1.效果类似于Windows桌面应用可以通过鼠标拖拽插入指定位置,并自动排序的效果。 2.开发环境Qt Creator,版本5.5.1。 3.可以实现响应点击信号。 4.有插入位置跟踪标线标志。 5.有鼠标选中拖拽过程中的截图效果。 6....
本文将详细解析如何使用JavaScript来模仿百度的弹出登录框,并实现鼠标拖拽效果。 首先,创建弹出登录框的核心是利用HTML来构建登录表单结构,包括用户名输入框、密码输入框、登录按钮以及可能的记住密码和注册链接...
"C# 控件拖拽效果"是指在C#环境中实现用户界面(UI)元素的动态拖放功能。这一功能允许用户通过鼠标操作将控件从一个位置移动到另一个位置,极大地提升了用户体验和交互性。下面我们将深入探讨如何在C#中实现控件的...
本教程将详细介绍如何实现Unity3D中的Button点击时放大、离开时缩小的动画效果,该效果经过实际测试,动画过渡自然流畅。 首先,我们需要创建一个Unity项目,并在Canvas上添加一个Button组件。在Unity的Inspector...
在Godot中,UI设计通常使用Visual Scene Editor进行,通过拖拽节点,设置属性,连接信号来实现。而逻辑部分则可以通过编写GDScript来实现,这是一种Python-like的脚本语言,易于学习且功能强大。 总的来说,...
本文将深入探讨如何在C#环境中实现一个可点击并具备边缘检测功能的WPF拖拽控件。 首先,我们需要创建一个新的WPF项目,并添加一个用户控件(UserControl)。这个控件将是我们的拖拽目标。在XAML文件中,定义控件的...
为了使拖拽效果流畅,可以使用QGraphicsView和QGraphicsItem来创建一个临时的行表示,随着鼠标移动而显示。这可以通过创建一个新的QGraphicsView类,添加行的QGraphicsItem,并在鼠标移动时更新其位置来实现。当鼠标...
- 事件冲突:确保拖动操作不会与按钮的点击事件或其他手势冲突。 通过以上步骤,你可以在Android或iOS应用中实现类似iOS的按钮拖动效果。这种功能可以增强用户的参与度,使应用更具吸引力。记得在设计和实现时始终...
在“qml图片旋转拖动鼠标点击变化”这个主题中,我们将深入探讨如何在QML中处理图片的旋转、拖动以及响应鼠标点击事件,以实现动态的用户界面效果。 首先,我们需要了解QML中的`Image`组件,它是用来显示图像的基本...
标题"flex 拖拽效果程序"表明我们将关注的是如何在Flex中创建一个具有拖放功能的程序。在Flex中,这种功能主要通过DragManager和UIComponent类的拖放API来实现。让我们详细了解一下实现拖放效果的过程。 1. **启用...
在Android开发中,实现拖动按钮的效果是一种常见的交互设计,它可以增强用户操作的直观性和趣味性。本篇文章将深入探讨如何在Android应用中创建这样的功能,主要涉及Android UI组件、触摸事件处理以及自定义View的...
在本文中,我们将深入探讨如何使用Qt C++库来实现一个功能丰富的悬浮小球窗口,该窗口具有置顶、可拖拽、可点击等特性。首先,我们需要了解Qt库,这是一个跨平台的应用程序开发框架,支持多种操作系统,包括Windows...