ボタンとテキストビューのループを使用して複数のビューを実際に作成していますが、idを使用してそのうちの1つを削除するにはどうすればよいですか?
for i=1,#displaymovenames do
moveButton = widget.newButton {
default = "closeBox.png",
over = "openBox.png",
width = 50,
height = 50,
onRelease = startMove,
id = moveID
}
moveButton.x = 50; moveButton.y = boxy
local deletemove = widget.newButton{
default = "remove.png",
over = "removeOver.png",
width = 30,
height = 30,
id = moveID,
alpha = 0,
onRelease = deleteSelectedItem
}
deletemove.x = _W + 20; deletemove.y = deletey
t = display.newText(displaymovenames[i], 85, texty, native.systemFont , 13)
t:setTextColor( 0, 0, 0)
t.id = moveID
boxy = boxy + 65
texty = texty + 65
deletey = deletey + 65
moveID = moveID + 1
moveitemscroll:insert ( moveButton )
moveitemscroll:insert ( t )
deletemoveGroup:insert ( deletemove )
end
基本的に、このコードが行うことは、deletemoveボタンが押されて削除されたときにmoveButton
、これが削除を担当する関数であるということです。deletemove
t
deleteSelectedItem = function ( event )
event.target:removeSelf()
end
ご覧のとおり、押されているビューしか削除できません。押されている他のビューはどうですか?どうすればそれらを削除できますか?idを正しく使用できますか?はいの場合はどうですか?
編集
私がやりたかったのはこれです。以下のアイテムをビューと考えてください。
------ ------------- -------
|image1| |anotherimage1| |button1|
------ ------------- -------
------ ------------- -------
|image2| |anotherimage2| |button2|
------ ------------- -------
------ ------------- -------
|image3| |anotherimage3| |button3|
------ ------------- -------
------ ------------- -------
|image4| |anotherimage4| |button4|
------ ------------- -------
をbutton1
押すbutton1, image1 and anotherimage1
と、ビューから削除されます。
それらをグループに配置するだけでこれを達成できます。問題は、ボタンがすでに別のグループに割り当てられていることです。これを解決する他の方法はありますか?