我希望能够将容器列表中的两个容器分开,以便在它们之间插入一个新的空容器。类似于iPhone应用程序“Clear”插入新任务的方式(例如,查看页面上的第一张图片https://www.raywenderlich.com/22174/how-to-make-a-gesture-driven-to-do-list-app-part-33 -当两个分拣容器被挤压离开时,小的红色容器被插入)。有什么关于我如何在代号1中实现这一点的提示吗?
发布于 2016-09-24 21:53:25
通常,您会重写pinch方法来实现收缩缩放或类似的调用。然而,这在这种情况下不会起作用,因为夹点将超出组件边界,它将不起作用。
我能想到的唯一方法是覆盖Form中的pointerDragged(int[],int[])方法,并检测正在增长的收缩运动来实现这一点。你可以在Component.java中查看pinch的代码,因为它应该是一个很好的基础:
public void pointerDragged(int[] x, int[] y) {
if (x.length > 1) {
double currentDis = distance(x, y);
// prevent division by 0
if (pinchDistance <= 0) {
pinchDistance = currentDis;
}
double scale = currentDis / pinchDistance;
if (pinch((float)scale)) {
return;
}
}
pointerDragged(x[0], y[0]);
}
private double distance(int[] x, int[] y) {
int disx = x[0] - x[1];
int disy = y[0] - y[1];
return Math.sqrt(disx * disx + disy * disy);
}添加条目很简单,只需在该位置放置一个空白组件,并增加其首选大小,直到它达到所需的大小。
https://stackoverflow.com/questions/39673861
复制相似问题