我有一个带有onTouch()侦听器的自定义视图。 此视图将添加到RelativeLayout中,因此:
CustomView mv = new CustomView(mActivity);
RelativeLayout rl = ((RelativeLayout) mActivity.findViewById(R.id.main_layout));
rl.addView(mv);
我希望用API8下的手指拖动视图,最好是驻留在视图自己的onTouch()侦听器中的代码。
在setPadding()或RelativeLayout.LayoutParams()的边缘可能只有几行代码,但经过一个小时的试错,我找不到它。
任何线索?非常感谢。
PS:onTouch的工作方式应该如此,我只是不知道我可以添加哪些代码来移动视图。
答案 0 :(得分:1)
我建议使用FrameLayout然后更改CustomView的边距,如下所示:
LayoutParams params = (FrameLayout.LayoutParams) mv.getLayoutParams();
params.leftMargin = x;
params.topMargin = y;
mv.setLayoutParams(params);
希望这有帮助。