所以我一直在寻找这个网站寻找我正在寻找的答案,我找不到它。关于SQLite数据库的YouTubes有许多很好的教程,但没有一个真正做到我想要的。
我正在制作游戏,在游戏中我希望玩家能够选择他们想要购买的商品(从商店购买),当他们购买该商品时,它将被保存到数据库中。然后当他们转到他们的库存或商店内的“销售”屏幕时,列表视图将显示他们在库存中的内容。
我完全设置了商店。即 - 他们可以购买的物品,当他们选择一个物品时,会弹出一个拨号并询问他们是否想要购买它,如果是的话,它会减去他们所拥有的金币并将该物品添加到数据库中。
^唯一不起作用的部分是将项目添加到数据库的部分。
以下是一些代码:
String[] MeleeArmour = new String[] {
"--- Melee Armour ---",
"(100G) Bronze Helmet", "(250G) Bronze Chestplate",
"(125G) Bronze Leggings", "(100G) Bronze Boots" //etc....
-
MeleeArmourList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
switch (position) {
case 1:
// (100G) Bronze Helmet
AlertDialog.Builder dlgAlert = new AlertDialog.Builder(
Shop.this);
dlgAlert.setMessage("Purchase Bronze Helmet?");
dlgAlert.setTitle("Shop");
dlgAlert.setPositiveButton("Buy",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
if (Integer.parseInt(textViewShopGoldValue1
.getText().toString()) >= 100) {
int gold1 = Integer
.parseInt(textViewShopGoldValue1
.getText().toString()) - 100;
textViewShopGoldValue1.setText(""
+ gold1);
Toast msg = Toast.makeText(Shop.this,
"Bronze Helmet added to inventory",
Toast.LENGTH_SHORT);
msg.show();
//this is where I need to add the item to a database
} else {
Toast msg = Toast.makeText(Shop.this,
"You don't have enough gold!",
Toast.LENGTH_SHORT);
msg.show();
}
dialog.dismiss();
}
});
dlgAlert.setNeutralButton("View info",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
}
});
dlgAlert.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
}
});
dlgAlert.setCancelable(false);
dlgAlert.create().show();
break;
有人有什么想法吗?如何设置数据库以满足我的需求。或者我可以采用不同的方法吗?我尝试使用“putExtra”方法并保存数据,但是在玩家购买物品后,我必须将它们发送到库存屏幕,这非常烦人,人们不会喜欢...
答案 0 :(得分:0)
这涉及一些数据库设计和应用程序设计。
您应该有一个存储可以购买的商品的表格。如果你有这个,那么很容易显示可供购买的物品及其成本,你可以用各种方式在你的应用程序中分发数据库。
接下来,您需要一个存储用户已购买商品的表格。
现在,要购买商品,用户会进入购买活动。检查用户的余额,在项目表中查询用户可以购买的项目,并在列表视图中显示。用户单击某个项目,您从用户的余额中扣除成本,并将该项目存储在用户的库存视图中。
不需要“确认”。相反,请选择“撤消”或“删除”。