0

私はいくつかの画像の参照を保持するテーブル(配列)を持っています。コードは次のとおりです: local rowcount = 8 local colcount = 4

    local blockWidth = display.contentWidth / (colcount*4)
    local blockHeight = display.contentWidth / (rowcount*2)

    local row
    local col
    local pan = 3
    local i=0
    for row = 1, rowcount do
            for col = 1, colcount do
                    local x = (col - 1) * blockWidth + pan + 30
                    local y = (row + 1) * blockHeight + pan
                    local random= math.random(1,6)
                    random = revisarTres(i, random)

                    local image = display.newImage(images[random], 0, 0)
                    image.x = x
                    image.y = y
                    print (x)
                    print (y)
                    image.value = random     
                    image:addEventListener("touch", blockTouch)
                    block[i] = image




                    i=i+1
            end
    end

31枚の画像のブロックに参照を保管しています。

次に、逆に、ある画像から別の画像への移行を行います。そして、この2つの値、座標、および参照を変更したいと思います。私はこれを作っています:

          block[old].value, block[new].value = block[new].value, block[old].value                

          block[old].x, block[new].x = block[new].x, block[old].x

          block[old].y, block[new].y = block[new].y, block[old].y

          block[old], block[new] = block[new], block[old]

古いものは、変更したい画像の1つの位置であり、もう1つの新しいものです。

参照は変更されていますが、値は変更されていません。

誰か助けてください、

ありがとう!

4

1 に答える 1

1

ちょっとしたメモ(追加?):

値を直接変更できないテーブルを見つけた場合は、読み取り専用でないかどうかを確認してください。Lua メタテーブルを使用したこの種の手法の詳細: lua-users Wiki - Read Only Tables

于 2013-06-26T16:27:15.380 に答える