首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android实现随意拖动View效果

项目过程中要实现能在页面中随意拖动,刚开始实现是用悬浮球的形式进行实现,因为之前项目中用过,实现后发现用户每次安装后,都有权限的限制,甚至有些用户关闭悬浮球权限之后,不知道怎么在手机上打开悬浮球的权限...,这样的话用户体验很不好,所以自己重新自定义实现在页面中拖动,不需要请求权限。...自定义随意拖动View: package com.dragdemo; import android.annotation.SuppressLint; import android.content.Context...android.widget.ImageView; /** *随意拖动view */ @SuppressLint("AppCompatCustomView") public class DragView...Toast.LENGTH_SHORT).show(); } } }); } } 项目Demo链接:底部公众号回复 “随意拖动

2.3K10

Android实现随意拖动View效果的实例代码

项目过程中要实现能在页面中随意拖动,刚开始实现是用悬浮球的形式进行实现,因为之前项目中用过,实现后发现用户每次安装后,都有权限的限制,甚至有些用户关闭悬浮球权限之后,不知道怎么在手机上打开悬浮球的权限...,这样的话用户体验很不好,所以自己重新自定义实现在页面中拖动,不需要请求权限。...自定义随意拖动View: package com.dragdemo; import android.annotation.SuppressLint; import android.content.Context...android.widget.ImageView; /** *随意拖动view */ @SuppressLint("AppCompatCustomView") public class DragView...实现随意拖动View效果的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

62452
您找到你想要的搜索结果了吗?
是的
没有找到

Android自定义View圆形和拖动圆、跟随手指拖动效果

单纯的自定义一个圆非常简单 只需要几步就完成 拖动圆添加实现触摸事件即可 我在第一次自定义View圆遇到的几个Bug: 1.拖动圆的话在xml里面设置的自定义圆的宽和高是它能活动的空间的大小 不是圆控件的大小...实现onDraw方法 public class CustomView extends View { //创建point对象 参数为x坐标和y坐标 private PointF point = new...类的名字: <ydtx.bwie.com.xiangmu_project02.CustomView android:layout_width="match_parent" android:layout_height...非常简单 实现触摸监听即可 代码非常少 如下: public class CustomView extends View { //创建point对象 参数为x坐标和y坐标 private PointF...自定义View圆形和拖动圆、跟随手指拖动效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

65431

Touch事件实现View拖动

根据这些事件,可以做出View任意推动的效果实现原理:   首先获取view的位置以及父控件viewgroup的位置(上下左右)。...然后实现OnTouchListener监听,监听MotionEvent.ACTION_DOWN以及MotionEvent.ACTION_MOVE。在ACTION_DOWN中记录第一次按下时的X、Y值。...注意: onTouch和onClick事件冲突问题:   当同时实现了Touch和Click事件时,会发生冲突,如何避免?在我们的onTouchListener的监听方法会返回一个boolean。...我们希望在点击的时候触发点击事件,在拖动的时候实现移动效果的Touch事件。   那么,我们定义一个boolean key=false;在ACTION_DOWN里,使key=false。...拖动事件太容易触发。所以我们需要加点限制。在ACTION_MOVE中我们获得X、Y移动的距离。那么我们判断当期中一个的移动距离大于1的时,才执行key=true。冲突得到较为完善的解决。

1.5K10

Android之RecycleView实现指定范围的拖动效果

1 问题 在RecycleView里面实现指定位置的拖动效果,(这里是实现线性布局的,不是网格布局的) @Override public boolean onMove(RecyclerView recyclerView...; import android.view.MotionEvent; import android.view.View; import androidx.core.view.GestureDetectorCompat...android.view.View; import android.widget.ImageView; import org.greenrobot.eventbus.EventBus; import java.util.ArrayList...prohibitDragIndexs.contains(index)) { itemTouchHelper.startDrag(vh) } } }) 到此这篇关于Android之RecycleView实现指定范围的拖动效果的文章就介绍到这了...,更多相关android recycleView实现指定范围的拖动内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!

1.4K21

android自定义view实现钟表效果

本文实例为大家分享了android view实现钟表的具体代码,供大家参考,具体内容如下 先看效果图: ?...接下来就是难点一了,这些刻度怎么办呢,其实我们不难发现其中的规律,每个刻度之间的弧度是一样的,那这样我们是不是可以通过旋转画布就可以实现这些刻度的绘制呢,答案是肯定的。...下面我直接贴一下代码把,代码是用kotlin实现(这不是重点)的 package com.example.commonui.widget import android.annotation.SuppressLint...import android.content.Context import android.graphics.Canvas import android.graphics.Color import android.graphics.Paint...import android.os.Handler import android.os.Message import android.util.AttributeSet import android.view.View

50310

Android自定义View实现拖拽效果

腾讯QQ有那种红点拖动效果,今天就来实现一个简单的自定义View拖动效果,再回到原处,并非完全仿QQ红点拖动。 先来看一下效果图 ?...简单说一下实现步骤 1.创建一个类继承View 2.绘制出一个小球 3.重写onTouchEvent,来根据手指放下,移动,抬起,来控制小球 4.直接在布局中引用 先贴一张图看下View的坐标系 ?...下面就贴一下代码,最后会给出源码 public class CustomView extends View { private int lastX; private int lastY; private...回到小球初始的位置 layout(startLeft, startTop, startRight, startBottom); break; } return true; } } 直接在布局中引用该自定义View...就可以,宽高给固定 源码地址:Android自定义View简单拖拽效果 以上就是本文的全部内容,希望对大家的学习有所帮助。

1.2K40

Android实现雷达View效果的示例代码

样式效果 还是先来看效果: ? ? 这是一个仿雷达扫描的效果,是之前在做地图sdk接入时就想实现效果,但之前由于赶着毕业设计,就没有亲手去实现,不过现在自己撸一个发现还是挺简单的。...目录 主体轮廓的实现(雷达的结构) 动画的实现(雷达扫描的效果) 目标点的加入(图片/点) 主体轮廓实现 ? 不难分析得出,这个View主要由外部的一个圆,中间的锚点圆以及扇形旋转区域组成。...mOutlinePaint.style = Paint.Style.FILL_AND_STROKE mOutlinePaint.color = mBackgroundColor } 绘制了基准圆以后,要实现雷达扫描时那种渐变的效果...一般的雷达控件应该都是居中显示的,所以我在这里也重写了onLayout方法,来实现居中的效果。...(7) } } 总结 到此这篇关于Android实现雷达View效果的文章就介绍到这了,更多相关android 雷达View效果内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持

54642

viewgroup实现item拖动效果

网络上关于GridView可拖动的例子已经不少了,包括带动画不带动画的都有一堆,但几乎都是通过继承Android原生控件GridView来扩展的,当然这种实现方式是很容易联想到的,也是最容易实现的。...今天跟大家分享另外一种方式,通过继承ViewGroup来实现,我们都知道,ViewGroup可以填充很多个View,因此,我觉得可以类似把GridView的每一个Item填充到我们自定义的ViewGroup...中,然后监听长按时间,实现拖动效果,同时加上动画效果,个人感觉比网上其他实现方式更加简洁和美观,唯一的缺点就是:没有setAdapter的函数,添加的item,需要我们手动add到ViewGroup中...好了,废话不多说,我们先来看看效果图,第一张是静态效果,第二张是拖动时的效果图。 ? ?...我们先来看看DragGridView的代码部分: /**  * 另外一种方式实现动画可拖动item的GridView  *   * @author way  *   */ public class

1.8K60

Android自定义View实现弹幕效果

在很多视频直播中都有弹幕功能,而安卓上没有简单好用的弹幕控件,本文介绍一个自定义弹幕view的demo。 效果图: ?...思路: 1、自定义Textitem类表示弹幕的信息 2、自定义view继承view,使用ArrayList保存每条Textitem 3、随机生成坐标点绘制每条TextItem,不断变换Text的横坐标实现弹幕的滚动...,弹幕横坐标不断变换,需要实现定时刷新界面,重新绘制text。...所以实现了Runable接口,在构造方法中开启线程,不断循环,每600毫秒刷新界面: public class barrageview extends View implements Runnable{...style的时候被调用 public View(Context Context,AttributeSet attrs, int defStyle)给View提供一个基本的style,没有对View设置属性就使用

92760

Android使用ViewDragHelper实现QQ聊天气泡拖动效果

QQ聊天气泡拖动效果Android实现代码,供大家参考,具体内容如下 概述 ? 本文的目的是实现类似于QQ消息提醒的气泡的拖拽效果。...网上已有大神的实现效果是通过监听控件的OnTouchEvent事件的ACTION_DOWN,ACTION_MOVE,ACTION_UP事件来处理相应的拖拽效果,这里采用ViewDragHelper的方式去实现拖拽...为了实现拖拽效果,我们首先需要写一个类DragLayout继承LinearLayout,在其中的控件都可以利用ViewDragHelper实现拖拽效果,在DragLayout的初始化方法中我们获取一个ViewDragHelper...* 这里可以决定哪个子view可以拖动 */ @Override public boolean tryCaptureView(View view, int pointerId) {...qq消息气泡拖拽,贝赛尔曲线的实现,利用属性动画来实现效果

1.3K10

Android自定义View实现圆形环绕效果

之前项目中需要实现一个四周环绕中心圆形头像的效果,感觉还是自定义比较方便,于是就自己封装了一个控件去实现。先贴张图显示最终效果。 ?...1.实现了圆形头像的显示,可以去参考网上或github上的demo,圆形头像的外圈其实是一个View,然后再把头像这个View盖到这个View上。...下面附上主要代码: package com.ihaveu.iuzuan.cardgame.widget; import android.content.Context; import android.support.annotation.Nullable...; import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.View; import...; import java.util.ArrayList; import java.util.List; /** * Created by zhouhui on 17-6-8. * 添加圆形子控件实现时钟环绕效果

85420

gradeview可拖动效果实现

下面先上这次实现功能的效果图:(注:这个效果图没有拖拽的时候移动动画,DEMO里面有,可以下载看看) 一、开发心里历程 刚开始接触这个的时候,不知道要如何实现,去网上翻了一大堆资料,懂了个大概,就是目前可以找到的都是拖拽的时候...OtherGridView) DragGrid 用于显示我的频道,带有长按拖拽效果 OtherGridView用于显示更多频道,不带推拽效果 注:由于屏幕大小不一定,外层使用ScrollView,所以2...(3) 抬起手后,清除掉拖动时候创建的view,让GridView中的数据显示。 6.  退出时候,将改变后的频道列表存入数据库。...;   /** 屏幕上的Y */ private int win_view_y;   /** 拖动的里x的距离 */ int dragOffsetX;   /** 拖动的里Y的距离 */...-- 震动权限 -->      六、源码下载 源码DEMO下载地址如下:下载地址

2.4K80
领券