4

私はCart Appを作成しており、ユーザーがCart Activityに項目を追加できるようにしています。カート項目リストでは、数値 (つまり、Item Cost、Qty、Total) に 3 つの Textview を使用しており、これらの値は ProductInformationActivity.java から取得されています。特定のアイテムをクリックして、まだカート アクティビティにあるアイテムをユーザーが更新できるようにしたい。ProductInformationActivity.javaでそのアイテムを開きたい。のような既存の詳細: ユーザーが以前に入力した数量 (例: 参照)カートアプリで)、それを行うために、カートアダプターで以下のコードを使用しています....

     public View getView(final int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
    View vi = convertView;
    if (convertView == null)
        vi = inflater.inflate(R.layout.listrow_cart, null);
        vi.setClickable(true);
        vi.setFocusable(true);          

        vi.setOnClickListener(new OnClickListener() {
        @Override

        public void onClick(View v) 
        {   
            HashMap<String, String> item = Constant.wishProducts.get(position);
            Log.d("CartAdapter", "onClick :: " + item);
            Intent myIntent = new Intent 
            (activity, com.era.restaurant.versionoct.menu.ProductInformationActivity.class);
            Log.d("CartAdapter", "Intent :: " + myIntent);
            myIntent.putExtra("Item", item);
            activity.startActivity(myIntent);        
        }
    });
4

2 に答える 2

1

編集:

HashMap<String,String>リスト項目をクリックすると、おまけとして送信されます。

HashMap エクストラを取得してから、そこから製品情報を取得する必要があります。このような

  HashMap<String,String> items=new HashMap<String,String>();
    if (getIntent().getSerializableExtra("item") != null)
    items = (HashMap<String, String>) getIntent().getSerializableExtra("item");

    String title = items.get(KEY_TITLE);
    String description = items.get(KEY_DESCRIPTION);
    String thumb_url = items.get(KEY_THUMB_URL);
    String cost = items.get(KEY_COST);
    String total =items.get(KEY_TOTAL);

これ

  itemamount = Double.parseDouble(text_cost_code.getText().toString());

ではないかException、またはtext_cost_code.getText().toString()Numberempty

Numberが含まれており、空でないことを確認する必要があります。

次に、このコードをtry catchif Exception catch に配置し、値を次のように変更します0

try{
 itemamount = Double.parseDouble(text_cost_code.getText().toString().trim());
}
catch(NumberFormatException e)
{
itemamount=0;
}
于 2013-05-01T06:15:45.597 に答える