嗨,我有一个拼写游戏应用程序,上面有 10 个阶段。每个阶段都有一个类别,例如第 1 阶段动物、第 2 阶段事物等,每个阶段也很少有问题。现在我想在其上添加评分功能,该功能将为每个正确答案增加并为每个错误答案扣除。当用户完成所有 10 个阶段时,将出现一个高分,用户可以在上面输入他们的名字并将其保存到数据库中。知道我该怎么做吗?我是android和JAVA的初学者。提前致谢。
4 回答
为了实现这一点,我建议您使用本地数据库。您将不得不暂时创建一个表格高分
- ID
- 姓名
- 分数
一个好的做法可能是创建一个表用户和一个表分数(并将它们连接在一起),因此您的用户将具有多个属性(如果使用单个表,则为名称)。
对于数据库,Android 使用 SQLite:参见:http: //developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html
然后,在您的应用程序中,您将不得不捕捉一个步骤(级别)何时完成。完成后,您可以获得数据库和所需表的实例,并在其中插入数据。
当所有关卡完成后,您可以显示高分并询问用户的姓名,如果需要还可以提供更多信息。
学习如何在 Android(以及所有其他语言)中管理数据库非常重要。如果您是初学者,这并不容易,但是有一些很好的教程,例如:
在这里使用共享偏好。取一个 int 类型变量,将其增加 +10,并使用简单的 if else 减去 -10。最后使用自定义对话框,如果他/她是高分者,它应该要求用户输入姓名。高分也可以存储在 sharedprefrences 中,或者您也可以将其存储在数据库中。
希望这可以帮助
我建议使用 SQLite 数据库来存储每个用户/游戏的进度和当前分数,并使用单独的表来存储实际的高分。
Android 中的 SQLite 实际上非常简单。最好从阅读在 SQL 数据库中保存数据开始。
您可以使用从不同类调用的单例类并添加点
import android.util.SparseArray;
public class Score{
public int score;
private static Scoreinstance;
private Score()
{
}
public static Score getInstance()
{
if (instance == null) {
instance = new Score();
}
return instance;
}
}
然后调用它
Score.getInstance().score += "points to be added"
然后最后将其保存到您的数据库中
http://www.vogella.com/articles/AndroidSQLite/article.html 这家伙做了一些很棒且易于理解的教程