mTargetCell = findNearestArea((int) mDragViewVisualCenter[0],
(int) mDragViewVisualCenter[1], 1, 1, mDragTargetLayout, mTargetCell);
Log.e("mylog", " mTargetCell="+mTargetCell[0]+","+mTargetCell[1]+" item.cellX="+item.cellX+" isDock="+isDock+" dockIconSize="+dockIconSize);
if(isDock && dockIconSize < 5){
if(item.container != -101){
item.container = -101;
item.cellX = mTargetCell[0];
item.cellY = mTargetCell[1];
item.screen = mTargetCell[0];
for(int i=0; i < dockIconSize ; i++){
View aView = layout.getChildrenLayout().getChildAt(i);
ItemInfo info2 = (ItemInfo) aView.getTag();
if(info2.cellX >= mTargetCell[0]){
Log.w("mylog","2 = i="+i);
int m = info2.cellX +1;
if(m > dockIconSize){
m = dockIconSize;
}
info2.cellX = m;
info2.screen = m;
}
layout.animateChildToPosition(aView, info2.cellX, info2.cellY, 0, 0,mRealTimePosition);
}
}
if(item.container == -101){
Log.e("mylog", "onDropover ///size="+ dockIconSize+" mTargetCell="+mTargetCell[0]+" item.cellX="+item.cellX);
for(int i=0; i < dockIconSize ; i++){
View aView = layout.getChildrenLayout().getChildAt(i);
ItemInfo info2 = (ItemInfo) aView.getTag();
Log.i("onDrop", "=====i="+i+" info="+info2+", x="+info2.cellX+","+info2.cellY+",screen ="+info2.screen+","+info2.spanX+","+info2.spanY);
if(item.cellX < mTargetCell[0]){
if (info2.cellX == mTargetCell[0] ) {
Log.w("mylog","1 = i="+i);
int m = info2.cellX - 1;
if(m < 0){
m = 0;
}
info2.cellX = m;
info2.screen = m;
}
}
if(item.cellX > mTargetCell[0]){
if (info2.cellX == mTargetCell[0]) {
Log.w("mylog","2 = i="+i);
int m = info2.cellX + 1;
if(m > dockIconSize){
m = dockIconSize;
}
info2.cellX = m;
info2.screen = m;
}
}
Log.i("onDrop", "i="+i+" info="+info2+", x="+info2.cellX+","+info2.cellY+",screen ="+info2.screen+","+info2.spanX+","+info2.spanY);
layout.animateChildToPosition(aView, info2.cellX, info2.cellY, 0, 0,mRealTimePosition);
// LauncherModel.updateItemInDatabase(mLauncher, info2);
invalidate();
}
item.cellX = mTargetCell[0];
item.screen = mTargetCell[0];
// layout.setGridSize(dockIconSize+1, 1);
}
分享到:
相关推荐
GameBoard类中,可以使用二维数组或者ArrayList等数据结构来表示游戏板,每个元素对应一个Animal实例。每当玩家发起交换请求时,GameBoard类会调用Animal类的方法进行判断和操作。 此外,实验报告通常会包含以下...
### Python 换位密码算法的实例详解 #### 一、换位密码基本概念与原理 换位密码(Transposition Cipher)是一种简单的古典密码技术,它通过对明文中的字符顺序进行重新排列来达到加密的目的。在换位密码中,原始...
类的实例可以代表一个问题实例,而解决方法可以作为类的一个成员函数。 在实际编程时,需要注意边界条件的处理,如空数组、只有一个元素的情况等。同时,为了解决大规模问题,还可以考虑使用并行计算或动态规划等更...
提供的压缩包中可能包含了更多电子书下载链接和书籍说明,这些资源可能涵盖了上述知识点的详细讲解和实例代码,对于深入学习和完成Java课程设计非常有帮助。通过学习和实践,你可以逐步提升自己的Java编程水平,为...
实例47:移形换位 31 实例48:替换这样的名字 32 实例49:使不连续的数字做到连续排列 33 实例50:查找颜色(红色)的内容,并在原来的字符的基础上添加序号 34 实例51:此类数据的替换 34 实例52:批量删除特定的字符...
在这个名为“数据结构(C语言)代码实例19”的压缩包中,包含了一些与数据结构相关的代码示例和资料,主要涉及建树、链表操作以及递归算法等主题。 首先,"平方根.txt"可能包含了一个计算平方根的算法,这通常涉及...
然后,实例化ItemTouchHelper,并将其绑定到RecyclerView上,这样就可以启用拖放功能。 在实际项目中,为了确保用户体验流畅,还需要注意优化拖动过程中的动画效果,以及在数据模型中同步更新元素的位置。同时,...
下面我们将详细探讨这种排序方法的原理、特点以及C语言实现的实例代码。 奇偶排序的核心在于通过比较和交换相邻的奇偶位置元素来逐步调整序列。在每一轮排序中,首先处理奇数位置的元素,然后处理偶数位置的元素,...
这个类可以包含一个`ArrayList`或`LinkedList`等数据结构,用于存储动物实例。我们还可以提供添加、删除、查找和交换动物位置等操作。例如,`addAnimal(Animal animal)`方法用于添加动物,`removeAnimal(int index)`...
换位递归.txt 排序法.txt 推箱子.txt 数字移动.txt 数据结构.txt 数据结构2.txt 数据结构3.txt 数组完全单元.txt 数组操作.txt 数组递归退出.txt 数组递归退出2.txt 文件加密.txt 文件复制.txt 文件...
换位递归.txt 排序法.txt 推箱子.txt 数字移动.txt 数据结构.txt 数据结构2.txt 数据结构3.txt 数组完全单元.txt 数组操作.txt 数组递归退出.txt 数组递归退出2.txt 文件加密.txt 文件复制.txt 文件...
通过php语言实现置换密码...实例化ShiftCipher类时,构造方法的参数为$data,$keynum,$mode,其中$data为需要加密或者解密的数据,$keynum为加密的密码,$mode是选择加密/解密模式,加密模式为true,解密模式为false。
下面是 Java 实现最小二叉树堆排序的实例代码: ```java private int[] getMinBinaryHeap(int[] array){ int N = array.length; int minBinaryHeap[] = new int[N]; int root;//根的值 int heapSize = 0;//记录...
其中,恺撒密码(Caesar Cipher)是一个简单的实例,它通过将每个字母向后移动固定数量的位置来实现加密。例如,如果明文的字母是 'H',而密钥是 4,那么 'H' 将被替换为 'L',因为 'L' 是在 'H' 之后的第四个字母。...
换位递归.c 汉诺塔2.c 汉诺塔.c 诺汉塔画图版.c 非递归.c ./硬币情况: for循环的.c 硬币分法.c ./逆阵: 简单逆阵.c 逆矩阵.c 逆阵.c ./问题算法: N皇后问题回溯算法.c 万年历 动态计算网络最长最短...
本文实例讲述了Python实现冒泡排序的简单应用。分享给大家供大家参考,具体如下: 冒泡排序的主要思想是换位,例如在满足某种条件下将i和j调换: if i>j: p = i i = j j = p 举出例子如下: 随意输入两个数字,...
2. 堆(Heap):用于存储对象实例和数组的区域。 3. 栈(Stack):用于存储方法调用过程中的局部变量和操作数的区域。 4. 程序计数器(Program Counter Register):用于存储当前执行的字节码索引的区域。 5. 本地...