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

有什么办法可以控制Android中拖动阴影的可见性吗?

在Android中,可以通过设置View的setOnDragListener()方法来控制拖动阴影的可见性。拖动阴影是指在拖动View时,会在屏幕上显示一个半透明的阴影效果。

要控制拖动阴影的可见性,可以自定义一个DragShadowBuilder类,并重写其onDrawShadow()方法。在该方法中,可以通过设置Paint的透明度来控制拖动阴影的可见性。

以下是一个示例代码:

代码语言:txt
复制
View dragView = findViewById(R.id.drag_view);
dragView.setOnLongClickListener(new View.OnLongClickListener() {
    @Override
    public boolean onLongClick(View v) {
        // 创建拖动阴影的Builder
        View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(v) {
            @Override
            public void onDrawShadow(Canvas canvas) {
                // 设置拖动阴影的透明度
                Paint paint = new Paint();
                paint.setAlpha(0); // 设置为0表示完全透明,不可见
                canvas.drawRect(0, 0, getView().getWidth(), getView().getHeight(), paint);
            }
        };

        // 开始拖动操作
        v.startDrag(null, shadowBuilder, null, 0);
        return true;
    }
});

在上述代码中,通过设置Paint的透明度为0,即paint.setAlpha(0),来使拖动阴影完全透明,从而实现控制拖动阴影的可见性。

这种方法适用于需要隐藏拖动阴影的场景,例如在某些特定的拖动操作中不需要显示阴影效果。

腾讯云相关产品和产品介绍链接地址:暂无推荐的腾讯云相关产品与产品介绍链接地址。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2014-10-27Android学习------布局处理(五)------ListView布局继续学习-----城市列表应用程序

点击拼音列表可以搜索,快速进入到该字母的第一个城市 城市的数据是放置在一个数据库,这里先不介绍。...1)、listview在拖动的时候背景图片消失变成黑色背景,等到拖动完毕我们自己的背景图片才显示出来 解决:在XML中加入 android:scrollingCache=”false” 或 android...:cacheColorHint=”#00000000″ 2)、listview的上边和下边有黑色的阴影 解决: android:fadingEdge=”none” 3)、修改listview的Item...:有很多时候我们发现这个设置好像没有效果,到底出了什么问题呢?...我还是不懂你这个字母怎么放上去的啊?不是说相对布局里面只有一行吗?

43120
  • 仿今日头条顶部导航效果

    要知道它们是如何实现的,用到了什么第三方库文件,反编译便是很好的一个了解方法,如果你想要了解如何反编译可以点击这个链接:反编译就这么简单 只是一般的APK打包后都是被混淆过的,所以没那么好了解他的每个界面是如何实现的...知道了它用到的架包有,提取了有用的部分: 1.android-support-v4.jar (最常用的官方架包之一) 2.android-support-v7.jar (主要用于ActionBar的低版本兼容...(友盟的官方架包) 自己要在加用上的架包有: 1.Android-Universal-Image-Loader  (图片的异步加载包)   使用方法配置以及下载 注:发现架包中有aaa什么的命名,说明它被混淆过...animation) {   // TODO Auto-generated method stub         redirectTo();//跳转     }   });   之后便是主界面: 可以发现主界面上方的栏目栏是可以横向拖动的...这个就是它在白天模式和黑夜模式下用的阴影图片。那我们可以采取重写HorizontalScrollView来判断滚动,如果滚动时候不是在最左边,显示左边阴影,不是在最右边,显示右边阴影。

    2.2K80

    MacBook苹果电脑如何安装Adobe PS、AU、PR等软件?

    放大后,你可以按住键盘上的H键,然后用鼠标点击拖动,会让缩放暂时缩小到一个缩略图的水平上。 这时会出现一个小黑框,代表你缩放之后能看到的部分。 你可以用鼠标控制它往其他地方移动。...拖动来快速设置阴影样式 在图层样式(双击图层缩略图打开)里面给图层添加阴影图层样式的时候,设置各种参数可能会很麻烦。 但其实,你可以把对话框移到一边。...通过在画布上直接单击和拖动,你可以快速设定阴影的距离、方向,并且实时在画布上预览到效果。 (拖到哪里是哪里!) 05....启用图层可见性历史记录 如果你不小心出现了上一条里说的问题,你可以提前在历史面板选项对话框中勾选最后一个设置(如图),该设置将为图层可见性启用历史状态。 (在哪里打开这个选项?点“三道杠”!)...3D玩法非常有趣,建议大家自己深入摸索一下,阴影和反射也很容易控制。你可以把它做得很惊艳,创建非常Amazing的标题字体。 29.

    8.4K31

    遇见RT——实时光线追踪带来的手游体验革命

    优势在于,可渲染出逼真的图像,达到照片级的真实感。 下图是两个不同版本的电影截图,可以看到老版本电影的特效很虚假,五毛钱特效的既视感。在新版本电影中,不易辨别特效和实拍场景。...那光线追踪的劣势是什么呢?开销大,相比其他图像渲染技术(如光栅化),渲染过程计算量大。 在一台手机上,用33ms去渲染一帧1080P的图像,可能实现吗?...有了华为的实时RT技术,就可得到清晰的反射,做到画质和功耗的平衡。 画质效果的对比。在阴影方面,光栅化的结果和光线追踪的结果有什么不一样?...首先是软阴影的优化,控制屏幕上软阴影所占的像素面积,阴影面积越大,功耗越大。在场景中尽量的保持只使用一盏可投射软阴影的灯光。软影的遮挡体面数尽可能少。同时可以使用低模投射阴影,使用高模进行渲染。...在冒险游戏中,通过声音去找到最终的出口。光线追踪还可以加速物理计算,做到快速的可见性检测及快速的寻路。那么一些物理游戏有登录手机端的可能。

    1K20

    如何处理手势冲突 | 手势导航连载 (三)

    除了游戏之外,有一些常见的 UI 也可能在这里回答 "是": 图片裁切 UI,其中用于裁切图片的控制点可能位于屏幕左/右边缘附近。 绘图应用,用户可以在屏幕画布上绘图 (自然也是滑动操作)。...比如 DrawerLayout 或尺寸较大的 ViewPager。 问题 4: 该视图/控件需要滑动拖动交互吗? 这个紧接着问题 3 。...如果您的视图放置在一个可滚动操作的容器 (如 RecyclerView) 中,那么请这么理解这个问题: 该视图是否完全或大部分位于手势交互区域中?...如果流程图为您选择了 "什么都不做" 的答案,但您依然觉得应用的使用有问题,请务必反馈给我们。...解决方案 2: 将该视图/控件移出手势交互区域 我们在上一篇文章有提到,可以用 Insets 区域来告知应用系统手势区域在屏幕中的位置。

    5K30

    google 分屏 横屏模式 按home键界面错乱故障分析(一)

    之前分析文章列表: Android 关机对话框概率没有阴影故障分析 android recent key长按事件弹起触发最近列表故障分析 google 分屏 popup无法显示故障分析 问题描述 [Dialer...,我们此处关注mBackground 和mMinimizedShadow(为什么,因为我们出错的就是这两个显示出来了) 这里我高亮了mHandle,这个是拖动分割线的响应View哦。...其实google这个在最小化的时候显示mMinimizedShadow,按照这个名字,它会是个shadow(让你知道这个是分屏了,有个阴影效果),如果显示分屏的时候,它就隐藏了。...setSlippery 设置是否在滑动中,中间的那个线是可拖拽的。 setTouchable是否可点击。...的栈信息为: 这里关注的栈方法为: 通过两个栈信息,我们便可以得到关键的两个东西:启动分屏的栈,关闭分屏的栈,这两个在分屏模式如此重要的方法,已经被我们拦到,其余的不是迎刃而解吗?

    1.7K80

    Android SlidingMenu 侧拉菜单的使用(详细配置)

    你可以直接继承app这个包中的SlidingActivity,SlidingFragmentActivity,SlidingListActivity等这几个类去实现这个效果, 或则直接在你的项目中的主类文件中初始化...,原因就是SlidingMenu库中已经带有了android-support-v4.jar这个官方架包,如果你在自己的项目中也带有这个架包的话,可能就会造成版本冲突,如果冲突了,你可以把自己项目中libs... setTouchModeAbove() 是常用属性有: 1)SlidingMenu.LEFT    在左测进行拖动才会相应MENU的拖动效果 2)SlidingMenu.RIGHT  在右测进行拖动才会相应...MENU的拖动效果 3)SlidingMenu.TOUCHMODE_FULLSCREEN    全屏可以拖动 配置设定方法中 attachToActivity(Activity activity, int...slideStyle)中slideStyle常用属性有: 1)SlidingMenu.LEFT     2)SlidingMenu.RIGHT    3)SlidingMenu.ABOVE     配置设定中以下方法的效果是一样的

    2K70

    Android5.0新特性-Material Design

    当然你也可以使用genymotion~有真机最好了~ 从官方下载x86模拟器加速器 除了从SDK中下载,还可以从Intel官方网站上下载加速器 官网如下: https://software.intel.com...影响视图阴影的因素 以往的Android View通常有2个属性——X和Y,而在Android5.X中,Google为其增加了一个新的属性 —Z,对应垂直方向上的高度变化。...在Android5.x中,View的Z值由 elevation + translationZ(这两个都是5.x引入的新特性)组成。...Z = elevation + translationZ 通过布局文件和Java代码设置视图的阴影 通过布局文件设置 在xml中设置View的视图高度 android:elevation="Xxdp"...(100); flag=false; }else{ view.animate().translationZ(0); flag=true; } 阴影拖动 ---- 视图裁剪 着色

    59620

    Android 11 开发者常见问题 | FAQ・第一期

    依据是什么?被 denied 过一次吗? 因为这个是系统级 API,所以只需要去调用并且按照返回值来做合适的操作就可以了。...SDK 01 Q: 对于 targetSdkVersion 非 Android 11 的应用会有什么影响吗? 我们在每一次更新新的版本的时候会考虑尽量减少对于应用的影响。...参考文档: developer.android.google.cn/preview/beh… 其他 01 Q: 关于 Android 虚拟机近期有什么更新?...06 Q: 输入法动画有 Demo 参考吗?低版本如 Android 10 有办法使用吗?...GitHub 中我们提供了相应示例,通过参考示例代码可以有更完整的了解: github.com/android/use… 目前只有在 Andorid 11 中可以使用这个最新的 API,在低版本中无法使用

    2.1K40

    filter:drop-shadow与box-shadow的区别

    使用标准的CSS3实现某元素的投影效果,有两个套路,第一个就是使用常见的box-shadow, 第二个就是使用CSS3的filter阴影滤镜drop-shadow,那这两个阴影实现有什么具体的差异呢?...而filter中的drop-shadowIE13才开始支持,移动端Android4.4才开始支持,细想一下,其实离在移动端愉快使用就差一口气,明天的今天,大家说不定就在载歌载舞了。...四、drop-shadow不能阴影叠加 box-shadow有个超屌的特性,就是阴影可以任意累加,因此,理论上我们可以使用box-shadow生成任意的图片 但是filter中的drop-shadow就只能抱歉了...drop-shadow有一个很厉害的特性,也就这一个特性,让其以后有足够的机会大放异彩!那就是,drop-shadow才是真正意义上的投影,而box-shadow只是盒阴影而已。 什么意思呢?...后来,又捣腾了一个办法,就使用矩形进行45deg旋转,两个box-shadow合体,但是,会存在阴影重叠的一部分,说穿了,还是效果不完美。 现在,有了drop-shadow,阴影就真的变成了阴影了。

    1.6K10

    -StatefulWidget的打开方式

    但如果你比较细心可以发现监听的值是在变化的,这跟Android是不同的 ?...怎么改变属性 在Android里控件修改其属性可以直接`对象.set属性`来设置 但在FLutter里你会奇怪的发现:当你`slider.value=20;`时会报错 这真是让人不爽,对象更改属性不是天经地义吗...,如下:有一个私有的变量_value, 在Slider拖动的过程中执行_render方法进行渲染,在渲染时先将Slider的值给_value 在setState方法调用之后,build将会重新执行,...还是饶了我吧 Android中控件的组合感觉很笨重,就连点击一下还有先找个id,但我也此心不改,未之乐此不疲,没办法,这就是爱 玩前端接触React的时候我就像寻到新欢,React的组件非常吸引我...比如需要象下面这样滑动到50之后复选框选中,当点击复选框清零 放在Android中想想都觉得凌乱,但自定义控件有麻烦,就像炉石起手全是高费的卡手心情 在Flutter中你想怎么封怎么封,只要状态改变

    1.1K10

    React Native组件(二)View组件解析

    View组件是一个支持Flexbox布局、样式、一些触摸处理的容器,它可以放到其它的组件里,也可以有任意多个任意类型的子组件。...设置View组件的阴影属性并没有什么意义,在View组件中定义这些样式是为了让继承它的组件去各自实现这些效果,比如Text组件。需要注意的是只有iOS平台能使用shadow属性。...2.3 elevation (Android) elevation取值为number。Android平台没有shadow来设置阴影,但是,可以用elevation属性来间接的设置阴影。...对于translate、scale、rotate的效果,Android开发者会非常熟悉,那么rotate和skew有什么区别呢?再来修改textStyle: ? 运行效果如下: ?...它用来控制当前视图是否可以作为触控事件的目标。 在开发中,很多组件是被布局到手机界面上的,其中一些组件会遮盖住它的位置下方的组件,有一些场景需要被遮盖住的组件来处理事件。

    2.5K60

    双管齐下:同时设计 iOS 和 Anroid

    如何选择优先的平台并不在于你的个人喜好,而是在于你设计的这款 app 的市场定位如何。你所处的环境中有更多人使用 Android 设备吗?它是收费 App 吗?你的目标受众是谁?...Google 的新 MD 设计规范有了一些更加细节的规定,通过一种叫“纸片”的方法来创造更多的层级关系。 2. 实体按钮 Android 有一个返回按钮,点击它可以返回上一个屏幕。 ?...这种方案有时候会受到一定的限制,特别将它是用于标签栏等元素的时候。要用好这种设计模式,你必须对不同的颜色在你的 App 中分别代表什么有一个清晰的概念。 ? 9....iOS 的动作表单没有阴影,仅仅是在原先的背景上防止了一个有一定透明度的灰色图案。 ? 下拉按钮 只存在于 Android 上,它允许用户快速选择功能。然而,记住,这并不是 iOS 原生的控件之一。...你可以从库中抽取出你要的部分并将它们用于你的 iOS 或 Android 设计稿中。

    1.4K50

    纯干货!谷歌MD深色主题设计规范详解(附Sketch官方文件下载)

    在设计的时候可以通过有透明度的白色叠加层来实现这种轻盈的效果。 ? 元素越高,颜色相应的就越浅、越明亮。 ? 通过表面的白色半透明层,控制透明度来让表面发生亮度变化。...叠加层与元素控件的结合,不仅增加了和底部阴影之间的对比度,还让边缘更加清晰锐利和明显。 ? 默认主题仅仅使用阴影来控制高程效果,而深色主题之下,还需要借助调整表面色彩来控制高程效果。...错误 不要使用外发光来替代阴影来表示高程差异,因为这种效果并不能准确地描述高程阴影投递下来的效果。 ? 可访问性与对比度 深色主题下,深色必须暗到一定程度,才能让白色的文本足够清晰地呈现。...主题配色 色彩在文本的易读性中起到了重要的作用。 所有的深色主题的配色方案都应该让UI中的元素都足够有对比度,足以通过 WCAG 的 AA 规则,也就是超过 4.5:1 的底线。...为了保持品牌本身的可识别性,品牌色应该可以在深色主题之下充分地使用,但是这种跨主题配色的元素应该控制在一两个元素的范围内,比如只有品牌LOGO 和品牌按钮是这样用的。

    9.8K10

    【详细】Android入门到放弃篇-YES OR NO-》各种UI组件,布局管理器,单元Activity

    答:不,放弃是不可能的,丢了Android,你会心疼吗?如果别人把你丢掉,你是痛苦呢?还是痛苦呢?~ 引导语 有人说,爱上一个人是痛苦的,有人说,喜欢一个人是幸福的。...你面前的热水,如果时间长了也会变凉。想拼搏那就去做,想休息一下那就静下心来。 问:哥,那今日讲什么?...答:初始Android,各种UI组件,布局管理器,单元Activity,从基础到基础,从放弃到努力,现在技术发展太快,Android市场需要的是技术人才,有着高能力者才更加有机会哦~ 问:嗯,那像我这样的女生有机会吗...答:有啊,很欢迎哦,至少比男生受欢迎~ Android发展太快,快到人才饱和状态,如何学会Android,基础最重要,提升最重要,努力最重要。努力是你获得资源,获取提升的最好办法了。...复选框CheckBox 多状态按钮ToggleButton 图片 高级UI控件 ProgressBar进度条 SeekBar可拖动条 RatingBar星级评分条 DatePicker日期选择器 TimePicker

    1.2K20

    安卓入门-第三章-安卓常用控件的使用方式

    总结一下:我们使用android:gravity来指定文字的对齐方式,可选值有top 、bottom 、left 、right 、center 等,可以用“|”来同时指定多个值,这里我们指定的center...1.5 ProgressBar以及控件的可见性 英文组合 中文含义 android:visibility 控制文件的可见性,有不可见占大小、不可见不占大小、可见等分类 setVisibility() 活动中控制可见性的方法...,传入数据为:View.VISIBLE 、View.INVISIBLE 和View.GONE style 控制进度条的格式,默认的进度条为动态的环形,可以改为拖动条 android:max 用于给拖动条设置最大大小...**所有的Android控件都具有这个属性,可以通过android:visibility 进行指定,可选值有3种:visible 、invisible 和gone 。...我们还可以通过代码来设置控件的可见性,使用的是setVisibility() 方法,可以传入View.VISIBLE 、View.INVISIBLE 和View.GONE 这3种值。

    1.9K20

    不要慌,Android高级面试题刷一刷

    跨进程通信 Android中进程和线程的关系?区别? 如何开启多进程?应用是否可以开启N个进程? 为何需要IPC?多进程通信可能会出现的问题? Android中IPC方式、各种方式优缺点?...启动一个程序,可以主界面点击图标进入,也可以从一个程序中跳转过去,二者有什么区别?...你从这个库中学到什么有价值的或者说可借鉴的设计思想? OKhttp针对网络层有哪些优化? 网络请求缓存处理,okhttp如何处理网络缓存的?...Glide源码机制的核心思想 你从这个库中学到什么有价值的或者说可借鉴的设计思想? Glide如何确定图片加载完毕? Glide使用什么缓存? Glide内存缓存如何控制大小?...Debug跟Release的APK的区别? android文件存储,各版本存储位置的权限控制的演进,外部存储,内部存储 有什么提高编译速度的方法? Scroller原理。

    1.4K30

    行为变更 | Android 12 中不受信任的触摸事件

    我们在 Android 12 中进行了一些变更,来提升应用和平台的安全性,进而使我们的用户能够拥有更安全的使用体验。回顾关于隐私和安全的文章,请参阅: 政策更新 | 开发者如何处理软件包可见性。...触摸控制是 Android 系统中同应用进行交互的主要方式。Android 12 中采取了额外的措施,来确保触摸事件被正确地传递给了应该响应此事件的应用,以此确保触摸交互的直观和安全性。...这些 API 部分由系统控制,可以被信任,因此您不需要担心使用这些 API 会受到限制。...用户还可以拖动 PIP 窗口,并可以点击它来展开或进行关闭。...不仅仅是因为这些 API 简单易用,它们还更加安全,而且用户已经对它们中的大多数很熟悉了。 我会受到影响吗?

    1.4K30

    面试造火箭,看下这些大厂Android中高级岗面试原题

    sp支持多进程吗?多线程呢? 数据库读写在同一个线程吗? 一个文本文件中每行有一个手机号或电话号,给定一个手机号,判断该文件中是否存在。给出时间复杂度较低的方案。...一个view上每秒显示一个数字,每隔一秒改变一次,想出解决办法,越多越好 代码健壮性和质量怎么控制?appbug怎么统计的?怎么处理的? 一个string值传入方法,值改变吗?...2).Android中如果使用Intent来携带数据的话,需要数据是基本类型或者是可序列化类型,Bundle使用Parcelable进行序列化,而HashMap则是使用Serializable进行序列化...1). volatile仅能使用在变量上;Synchronized 可以使用在变量、方法、类上; 2). volatile仅能实现变量的修改可见性,不能保证原子性;Synchronized 则可以保证变量的修改可见性和原子性...Android中的线程有那些,原理与各自特点。 AsyncTask、HandlerThread和IntentService。

    63810
    领券