我得到的代码是1:1,与这个用户的原始问题中描述的代码相同,其中的dragevents位于enter、exit、location等位置:
How to drag a imageview in android studio?
代码的唯一区别是,我试图移动布局而不是imageview(它附加了imageview)
我将试着画一些图片来更好地描述我的问题。
我想移动我的布局(它可能有图像视图,按钮,标签等,所以我想抓住这整个'组'的对象),并通过在屏幕上平移来移动它。
据我所知,没有什么比“相机”更适合我使用的了(它可以在布局中移动,显示布局的各个部分),如果我沿着屏幕拖动,我必须移动整个布局及其内容。
假设我触摸屏幕并向右滑动,那么整个布局也应该向右移动,向左侧显示以前不在屏幕上的任何内容。不过,发生的情况是,我看到的整个屏幕并没有显示或呈现这些新的部分,而是像屏幕截图一样四处移动,“新”部分是黑色的(黑色作为活动的背景)。(您可以通过左键单击此网站上的任何图片并将其四处拖动来想象这一点,这样图像就会被复制,并且大约50%是透明的。这就是我得到的)
所以我假设只有那些部分正在被呈现给用户,对吧?我怎样才能解决它的方式,新的部分也显示出来?
我也尝试过这个源代码,但它有相同的效果,它使用MotionEvents而不是DrageEvents:
https://www.vogella.com/tutorials/AndroidDragAndDrop/article.html
我也浏览了其他问题,这些是我能找到的最接近的,但是我的问题仍然存在:
https://developer.android.com/guide/topics/ui/drag-drop
Android: Drag ImageView Off Screen
另一件我很困惑的事是坐标系。我应该选择我的[0;0]“全局”点是电话屏幕的还是最大版面的翻译?