Hello all.
Am new to Corona and Lua, mainly a VB developer. Have a question which I am sure is very simple to you.
I want to display images in a sort of grid as per the image attached...
Only at the moment I am doing it using the following code, I know this must be possible using a for loop in about 4 lines of code, can anyone help me??
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | local txt=display.newText('Please browse through our catalouge',10,18, "Arial",18) DynamicImage = display.newImageRect( "7c15c9344ffaceca7ef44ee8c2614cf1.jpeg", 80, 80) DynamicImage:setReferencePoint(display.CenterReferencePoint) DynamicImage.x = 60 DynamicImage.y = 100 DynamicImage1 = display.newImageRect( "5dce67ecfe8a7fe432db1b55362ce752.jpeg", 80, 80) DynamicImage1:setReferencePoint(display.CenterReferencePoint) DynamicImage1.x = 160 DynamicImage1.y = 100 DynamicImage2 = display.newImageRect( "6b77b6a197bada0948d737780b5cdc45.jpeg", 80, 80) DynamicImage2:setReferencePoint(display.CenterReferencePoint) DynamicImage2.x = 260 DynamicImage2.y = 100 DynamicImage = display.newImageRect( "7c15c9344ffaceca7ef44ee8c2614cf1.jpeg", 80, 80) DynamicImage:setReferencePoint(display.CenterReferencePoint) DynamicImage.x = 60 DynamicImage.y = 200 DynamicImage1 = display.newImageRect( "5dce67ecfe8a7fe432db1b55362ce752.jpeg", 80, 80) DynamicImage1:setReferencePoint(display.CenterReferencePoint) DynamicImage1.x = 160 DynamicImage1.y = 200 DynamicImage2 = display.newImageRect( "6b77b6a197bada0948d737780b5cdc45.jpeg", 80, 80) DynamicImage2:setReferencePoint(display.CenterReferencePoint) DynamicImage2.x = 260 DynamicImage2.y = 200 DynamicImage = display.newImageRect( "7c15c9344ffaceca7ef44ee8c2614cf1.jpeg", 80, 80) DynamicImage:setReferencePoint(display.CenterReferencePoint) DynamicImage.x = 60 DynamicImage.y = 300 DynamicImage1 = display.newImageRect( "5dce67ecfe8a7fe432db1b55362ce752.jpeg", 80, 80) DynamicImage1:setReferencePoint(display.CenterReferencePoint) DynamicImage1.x = 160 DynamicImage1.y = 300 DynamicImage2 = display.newImageRect( "6b77b6a197bada0948d737780b5cdc45.jpeg", 80, 80) DynamicImage2:setReferencePoint(display.CenterReferencePoint) DynamicImage2.x = 260 DynamicImage2.y = 300 DynamicImage = display.newImageRect( "7c15c9344ffaceca7ef44ee8c2614cf1.jpeg", 80, 80) DynamicImage:setReferencePoint(display.CenterReferencePoint) DynamicImage.x = 60 DynamicImage.y = 400 DynamicImage1 = display.newImageRect( "5dce67ecfe8a7fe432db1b55362ce752.jpeg", 80, 80) DynamicImage1:setReferencePoint(display.CenterReferencePoint) DynamicImage1.x = 160 DynamicImage1.y = 400 DynamicImage2 = display.newImageRect( "6b77b6a197bada0948d737780b5cdc45.jpeg", 80, 80) DynamicImage2:setReferencePoint(display.CenterReferencePoint) DynamicImage2.x = 260 DynamicImage2.y = 400 |
something like that, i suppose?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | local whiteTable = {} local greenTable = {} local redTable = {} for i=1,4 do local whiteRect = display.newRect(0,0,70,70) whiteRect.x = 70 whiteRect.y = 70+(i-1)*100 whiteTable[i] = whiteRect local greenRect = display.newRect(0,0,70,70) greenRect:setFillColor(0,255,0) greenRect.x = 170 greenRect.y = 70+(i-1)*100 greenTable[i] = whiteRect local redRect = display.newRect(0,0,70,70) redRect:setFillColor(255,0,0) redRect.x = 270 redRect.y = 70+(i-1)*100 greenTable[i] = greenRect end |
Thats kind of what I want but each picture will be unique, the repeats the same rects, is there another way?
yeah, you can actually
1 2 3 4 5 6 7 8 9 10 11 12 13 | local whiteTable = {"planet1.png", "planet2.png", "planet3.png", "planet4.png"} local t = {} for i=1,4 do local whiteRect = display.newImageRect(whiteTable[i],70,70) whiteRect.x = 70 whiteRect.y = 70+(i-1)*100 t[i] = whiteRect end |
Thanks alot, still not quite how I want it but enough for me to play around.
views:1584 update:2011/12/3 14:45:35