可移动和点击的按钮,我是新来的Xamarin的Android和目前工作的一个浮动的操作按钮,我实现View.IOnTouchListener和普通按钮点击事件(faButton.Click + = floatButtonPressed;)执行我的行动。但对于的情况MotionEventActions.Move,它不工作,因为我想。左右移动可以正常工作,但是对于顶部和底部,只要我开始移动,它会向下移动一点点。此外,当我将按钮移动到屏幕边框时,它将能够超出屏幕。因此,我试图检测屏幕大小,并限制它,但它仍然不够好,有没有其他可用的解决方案或设置?如何创建Android的
public bool OnTouch(View v, MotionEvent e)
{
switch (e.Action)
{
case MotionEventActions.Down:
oldXvalue = e.GetX();
oldYvalue = e.GetY();
if (oldXvalue == e.GetX() && oldYvalue == e.GetY())
{
return false;
}
break;
case MotionEventActions.Up:
if (oldXvalue == e.GetX() && oldYvalue == e.GetY())
{
return false;
}
break;
case MotionEventActions.Move:
var xleft = (int)(e.RawX - oldXvalue);
var xright = xleft + v.Width;
var ytop = (int)(e.RawY - oldYvalue);
var ybtm = (ytop + v.Height);
if (xleft + v.Width >= intWidth)
{
break;
}
if (xleft <= 0)
{
break;
}
if (ytop + v.Height >= intHeight)
{
break;
}
if (ytop <= 0)
{
break;
}
v.Layout(xleft, ytop, xright, ybtm);
break;
}
return true;
}
可以的DOI删除和添加视图(按钮)触摸 –
你是什么意思删除,并添加观点?你能给我一些提示吗? @JinalPatel –
你想要一个可移动的按钮,你可以使用一个按钮,它将添加在你触摸并从上一个位置移开的地方 –