比方说:
Activity1包含一些将被拖动的项目
Activity2包含一些“框”,其中将填充Activity1的项目。这些盒子已经具有拖动侦听器。
我想将项目从Activity1拖到Activity2
我尝试了以下方法:
我在Activity1项目上实现onLongClickListener()
,并在其中使用startDrag()
。然后我打开Activity2。我可以使拖动阴影出现,但框不能接收该项目。实际上,他们不响应任何DragEvent
。
我在Activity1项上实现了onLongClickListener()
,但只是将数据传递到Activity2中。然后我在Activity2启动时使用startDrag()
(特别是在onResume()
中)。在这里,阴影不出现,并且框不响应任何DragEvent
。
有什么办法可以做到这一点?
最佳答案
可以使用视图分页器的两个片段代替2个活动,并且可以在onTouch()或dispatchTouch()中设置拖放逻辑。
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
return super.dispatchTouchEvent(ev);
}
在片段活动中使用dispatchTouch()或
viewPager.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return false;
}
});
使用视图寻呼机的触摸事件,您可以在内部设置拖放逻辑。
我希望这个想法能对您有所帮助。
关于android - Android-2个 Activity 之间的拖放,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49399121/