【发布时间】:2014-08-05 02:21:08
【问题描述】:
如问题所述,我想知道如何保存活动的状态。我的应用程序有一个产品列表,并允许用户单击一个产品,启动显示该产品所有信息的第二个活动。在第二个活动中,用户可以通过按下按钮“将产品添加到购物车”。 当您按下按钮时,第三个活动开始。这是一个列表视图,显示添加的产品的名称和价格 - 如下面的代码所示。 如何保存添加的数据,以便如果我返回并添加另一个产品,它会将其添加到已经存在的列表视图下方?
我希望问题很清楚,如果没有,请询问,我会添加任何需要的内容。
提前致谢:)
package activity_app;
import java.util.ArrayList;
import java.util.HashMap;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
public class shopping_cart extends ListActivity {
private ListView lv;
private Intent intent;
private String name;
private String price;
ArrayList<HashMap<String, String>> oslist;
private static final String PROD_PRICE ="price";
private static final String PROD_NAME = "name";
ListAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.shopping_cart_activity);
getActionBar().setTitle("Ordered Products");
intent = getIntent();
name = intent.getStringExtra("PROD_NAME");
price = intent.getStringExtra("PROD_PRICE");
oslist = new ArrayList<HashMap<String, String>>();
HashMap<String, String> map = new HashMap<String, String>();
map.put(PROD_NAME, name);
map.put(PROD_PRICE, price);
oslist.add(map);
adapter = new SimpleAdapter(shopping_cart.this, oslist,
R.layout.shoppingcart,
new String[] {PROD_NAME, PROD_PRICE}, new int[] {R.id.name, R.id.Price});
setListAdapter(adapter);
【问题讨论】:
-
您可能需要使用 SQLite 数据库。更多详情请阅读Storage Options。
-
谢谢,我之前也在阅读它,只是想知道是否存在任何其他选项,因为我试图避免使用该特定应用程序的数据库。
标签: android android-activity savestate