我正在尝试在我的Android数独游戏中实现撤消和重做按钮,但这很复杂,因为用户可以起草(输入他们认为可能是单元格答案的数字),插入他们认为是的值,删除特定内容从草稿或值中编号,然后删除所有草稿值。我当时正在考虑使用一个保存某种对象的堆栈,该对象可以保存另一个对象的状态,然后弹出然后将其还原回去,但是我似乎找不到任何能够做到这一点的东西。瞬间对象似乎是最接近的,但是我认为只保存1状态并返回该状态。有什么建议么?
最佳答案
Cell{
isNotEditable
DraftValue
Value
X
Y
}
SudokuStep{
ArrayList<Cell>
}
您可以保留每个步骤的所有单元格,并将步骤保留在ArrayList中,然后在步骤之间移动。您必须修改用户没有重做和移动的步骤
关于java - 在数独游戏Android中撤消,重做,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45681580/