我有一些拖放功能,其中有8項(dragArray)可以放在2個大着陸區(matchArray)上。但是因爲我不希望他們彼此躺在一起,我已經在他們的位置(posArray)中創建了一個數組。如何選擇數組的一部分?或者將一個陣列的某些部分與另一個陣列的部分進行匹配
var dragArray:Array = [drag_1, drag_2, drag_3, drag_4, drag_5, drag_6, drag_7, drag_8];
var matchArray:Array = [drop_1, drop_1, drop_1, drop_1, drop_2, drop_2, drop_2, drop_2];
var posArray:Array = [{x:412,y:246},{x:530,y:218},{x:431,y:186},{x:470,y:152},{x:140,y:111},{x:108,y:162},{x:179,y:210},{x:113,y:254}];
當所有8個項目都將被丟棄,檢查按鈕出現,我要檢查,如果他們被丟棄到正確的大着陸區。我嘗試使用以下:
if (posArray[i].x != dragArray[i].x || dragArray[i].y != posArray[i].y)
但後來,不僅着陸區必須匹配,但持倉量也必須匹配。
當我使用
if (matchArray[i].x != dragArray[i].x || dragArray[i].y != matchArray[i].y)
這是行不通的,因爲(dragArray)項目位置不與(matchArray)着陸區的報名點相匹配。
是否有任何方法檢查前4個(drag_1,drag_2,drag_3,drag_4)項是否與前4個posArray位置中的任何一個匹配,並且最後4個(drag_5,drag_6,drag_7,drag_8)最後4個posArray職位?
,我不知道如果我完全理解這個問題,但它的聲音,而不是使用像你需要一個嵌套循環,我要同時遍歷兩個集合,您可能需要爲另一個數組的每個元素遍歷一個數組(可能使用布爾值來跟蹤在遍歷內部循環時是否出現了某種情況)。 – shaunhusain 2013-04-22 09:37:25
我不是一個真正的動作英雄,所以我不知道我是否也理解你,但這聽起來很合理。 嵌套你的意思是類似 'if((posArray(0)|| posArray(1)|| posArray(2)|| posArray(3))。x!= dragArray [i] .x || dragArray [i ] .y!=(posArray(0)|| posArray(1)|| posArray(2)|| posArray(3))。y)' 但是可能寫完全別的,但有了這個想法。 或者我現在錯過了這一點? – wortle 2013-04-22 10:25:02
嘗試此操作 if(((posArray [0] || posArray [1] || posArray [2] || posArray [3])。x!=(drag_1 || drag_2 || drag_1 || drag_4).x ||(drag_1 || drag_2 || drag_1 || drag_4).y!=(posArray [0] || posArray [1] || posArray [2] || posArray [3])。y)||((posArray [5] || posArray [6] || posArray [7] || posArray [8])。x!=(drag_5 || drag_6 || drag_7 || drag_8).x ||(drag_5 || drag_6 || drag_7 || drag_8).y!=(posArray [5] || posArray [6] || posArray [7] || posArray [8])。y))' 但沒有運氣。猜猜我錯過了點... – wortle 2013-04-22 10:44:01