При создании нашего приложения мы начинаем сталкиваться с тем, что объектов на экране становится всё больше и управлять ими по отдельности всё сложнее. Частично эту проблему решает использование групп. Группа — это особый объект, который включает в себя другие объекты, а также другие группы. Группы можно трансформировать, менять их свойства, положение и удалять. Естественно, все действия применяются одновременно ко всем объектам входящим в группу.
Для начала необходимо создать группу через метод display.newGroup и дать ей уникальное имя.
-- создаём группу для ввода веса
local weightGroup = display.newGroup();
Добавлять объекты в существующую группу можно двумя способами. Во-первых, делать это напрямую.
weightGroup:insert(weightMinusButton);
Здесь: weightGroup — имя группы; weightMinusButton — имя объекта, в данном случае кнопки.
Во-вторых, для большинства объектов при их создании можно сразу указать имя группы.
-- создаём круг и добавляем его в группу weightGroup
display.newCircle(weightGroup, display.contentCenterX, 74, 60):setFillColor(244/255);
Удаление группы
При удалении группы удаляются и все объекты в неё входящие. Удаляется группа так.
weightGroup:removeSelf();
-- или
display.remove(weightGroup);
weightGroup = nil;
Хорошей практикой является не только удаление группы, но и обнуление переменных связанных с объектами, это гарантирует освобождение занятой памяти.
Управление группой
Группу и все объекты в неё входящие можно перемещать, изменяя их координаты.
weightGroup.y = 100; -- координата по оси y
Также группы можно масштабировать, поворачивать и сдвигать относительно текущего положения. Останавливаться на этом не будем, если вам интересно, читайте руководство Corona SDK.
См. также
Руководство по программированию групп
http://docs.coronalabs.com/guide/graphics/group.html