我使用json解析器将数据提取到listview中,一旦用户点击任何listview项目行然后在整个页面中显示所选项目,以及添加到购物车按钮,这里我希望每当用户点击该按钮显示项目详细信息(仅限名称和成本)到vieworder表单,并允许用户选择更多项目,如: - 购物车功能,最后允许用户在ViewCart活动中查看他们选择的订购项目,这里我放置SingleItem和FinalOrder CODE的代码: -
public class SingleMenuItem extends Activity{
static final String KEY_TITLE = "title";
static final String KEY_COST = "cost";
static final String KEY_THUMB_URL = "imageUri";
private EditText edit_qty_code;
private TextView txt_total;
private TextView text_cost_code;
private double itemamount = 0;
private double itemquantity = 0;
ListView list;
LazyAdapter adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.single);
Intent in = getIntent();
String title = in.getStringExtra(KEY_TITLE);
String thumb_url = in.getStringExtra(KEY_THUMB_URL);
String cost = in.getStringExtra(KEY_COST);
ImageLoader imageLoader = new ImageLoader(getApplicationContext());
ImageView imgv = (ImageView) findViewById(R.id.single_thumb);
TextView txttitle = (TextView) findViewById(R.id.single_title);
TextView txtcost = (TextView) findViewById(R.id.single_cost);
TextView txtheader = (TextView) findViewById(R.id.actionbar);
txttitle.setText(title);
txtheader.setText(title);
txtcost.setText(cost);
imageLoader.DisplayImage(thumb_url, imgv);
text_cost_code = (TextView)findViewById(R.id.single_cost);
edit_qty_code = (EditText)findViewById(R.id.single_qty);
txt_total=(TextView)findViewById(R.id.single_total);
itemamount=Double.parseDouble(text_cost_code.getText().toString());
txt_total.setText(Double.toString(itemamount));
edit_qty_code.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
public void afterTextChanged(Editable s) {
itemquantity=Double.parseDouble(edit_qty_code.getText().toString());
itemamount=Double.parseDouble(text_cost_code.getText().toString());
txt_total.setText(Double.toString(itemquantity*itemamount));
}
});
final ArrayList<HashMap<String, String>> itemsList =
new ArrayList<HashMap<String, String>>();
list=(ListView)findViewById(R.id.listView1);
adapter=new LazyAdapter(this, itemsList);
list.setAdapter(adapter);
ImageButton addToCartButton = (ImageButton) findViewById(R.id.img_add);
addToCartButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
int position = 0;
HashMap<String, String> map = itemsList.get(position);
Intent in = new Intent
(SingleMenuItem.this, com.erachnida.restaurant.versionoct.FinalOrder.class);
in.putExtra(KEY_TITLE, map.get(KEY_TITLE));
in.putExtra(KEY_COST, map.get(KEY_COST));
startActivity(in);
}
});
// Close the activity
// finish();
}}
ViewCart: -
public class FinalOrder extends Activity
{
static final String KEY_TITLE = "title";
static final String KEY_COST = "cost";
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.view);
Intent in = getIntent();
String title1 = in.getStringExtra(KEY_TITLE);
String cost1 = in.getStringExtra(KEY_COST);
TextView txttitle1 = (TextView) findViewById(R.id.item_name);
TextView txtcost1 = (TextView) findViewById(R.id.item_cost);
txttitle1.setText(title1);
txtcost1.setText(cost1);
}
答案 0 :(得分:0)
在代码下面写下来从意图中获取数据,它将解决您的问题。
Bundle bdl=getIntent().getExtras();
String title1 = bdl.getString(KEY_TITLE);
String cost1 = bdl.getString(KEY_COST);