我正在Android中开发一个测验应用程序。在我的应用程序中,我有类别,我在每个类别中添加了级别。 现在我需要锁定除第一个类别之外的所有类别。只有在他/她完成关卡的特定目标后,用户才能解锁类别。我不知道如何在Android中锁定类别。类别以按钮的形式出现。通过使用以下我填写列表并传递三个类别,即好莱坞,宝莱坞和音乐。
hollywood = (Button) findViewById(R.id.main_hollywood);
Typeface tf = Typeface.createFromAsset(getContext().getAssets(),
"Font/game_font.ttf");
hollywood.setTypeface(tf);
OnClickListener listener = new OnClickListener() {
@Override
public void onClick(View v) {
settings.edit().putBoolean("check", false).commit();
Intent intent = new Intent(getContext(), SceneActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}
};
hollywood.setOnClickListener(listener);
bollywood = (Button) findViewById(R.id.main_bollywood);
tf = Typeface.createFromAsset(getContext().getAssets(),
"Font/game_font.ttf");
bollywood.setTypeface(tf);
listener = new OnClickListener() {
@Override
public void onClick(View v) {
settings.edit().putBoolean("check", false).commit();
Intent intent = new Intent(getContext(), SceneActivity1.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}
};
bollywood.setOnClickListener(listener);
music = (Button) findViewById(R.id.main_music);
tf = Typeface.createFromAsset(getContext().getAssets(),
"Font/game_font.ttf");
music.setTypeface(tf);
listener = new OnClickListener() {
@Override
public void onClick(View v) {
settings.edit().putBoolean("check", false).commit();
Intent intent = new Intent(getContext(), SceneActivity2.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}
};
music.setOnClickListener(listener);
}
答案 0 :(得分:1)
有两种方法可以解决这个问题
在您可以处理情况的应用程序中使用shared preference
使用sqlite数据库并相应地更新列
如果您需要更多信息,请告诉我
对于共享偏好设置,您可以使用TinyDb
此类简化了对一行代码中对SharedPreferences的调用。它还可以更像:保存字符串,整数和保存图像的列表。全部在一行代码中!
使用示例:
TinyDB tinydb = new TinyDB(context);
tinydb.putInt("clickCount", 2);
tinydb.putFloat("xPoint", 3.6f);
tinydb.putLong("userCount", 39832L);
tinydb.putString("userName", "john");
tinydb.putBoolean("isUserMale", true);
tinydb.putList("MyUsers", mUsersArray);
tinydb.putImagePNG("DropBox/WorkImages", "MeAtlunch.png", lunchBitmap);
//这些以及相应的get方法都包含在内 这只是一个简单易用的例子。这个类中还包含许多有用的方法。享受:)