2017-01-26 23 views
0

私は自分が購入したいアイテムを含むCart Activityを持っています。ListView AからListView Bにデータを渡す方法は?

enter image description here

私は「チェックアウト」ボタンをクリックすると、私が欲しいのは、カート内のすべてのデータがここにリストビューB.

を有する次のアクティビティに送信されます、であるの一部であり、私はここのTextViewフィールド

final Order data = items.get(position); 
    holder.cart_name.setText(data.getName()); 
    holder.cart_price.setText("Php "+data.getPrice()); 

    holder.cart_qty.setText(data.getQty()); 

を設定し、私は私のCartCustomerAdpater.class CHECK OUTボタンが配置されている私のCart.classの一部です。

checkout.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      //WHAT SHOULD I DO HERE? 
     } 
    }); 
+1

* //私はここで何をすればいいの送信?* ...、すべてのアイテムを収集し、活動に送りますしかし、あなたが試したこともないようです – Selvin

+0

私はそれらのデータを取得するための別のアルゴリズムを得ました。私はよりよい解決策を模索しようとしています。私は共有環境設定がどのように動作するかを学んでいます私はちょうど助けてくれる人がいるかどうかを尋ねようとしています。 –

答えて

0

はあなたのListViewを宣言したと仮定します。リストビューを使用setOnItemClickListener()の場合には

ListView lv =(ListView) findViewById(R.id.lv); 

、これは次のアクティビティにデータを送信するための私のサンプルコードです。

lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
       ModelClass jhild = (ModelClass) adapter.getItem(position); 


       Intent in = new Intent(getApplicationContext(), BuyApartmentsInformation.class); 
       in.putExtra(KEY_DISTRICT_NAME, jhild.getDistrict()); 
       in.putExtra(KEY_FLOORS, jhild.getFloors()); 
       in.putExtra(KEY_AREA, jhild.getArea()); 
       in.putExtra(KEY_BUYLAND_CODE, jhild.getBuyno()); 
       in.putExtra(KEY_PRICES, jhild.getPrice()); 
       in.putExtra(KEY_INFORMATION, jhild.getInformation()); 

       startActivity(in); 
      } 
     }); 

しかし、アドバイスの私の作品あなたが

RecyclerViewに更新する必要があり、それがうまく動作願っています。

+0

それは私の場合ではありません。私はListView内のいずれかの項目をクリックしたくない。 "CHECK OUT"ボタンはListView_Aの中のすべてをListView_BでActivity_Bに送ります。 –

+0

同じ概念を借りてみてください –

0

使用の意図

Intent intent = new Intent(A.this, B.class); 
intent.putextra("keyName","value"); 
startActivity(intent); 

レシーブ

String data = getIntent().getExtras().getString("keyName"); 
0
1. You need to implement Serializable or Parcelable in your **Order.java** class so that you can pass the ArrayList of Order through Bundle or Intent . 

     public class Order implements Serializable{ 
     } 

2. Pass the list of items through intent and start new activity 

    checkout.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent newActivity = new Intent(this , NewActivity.class); 
       newActivity.putExtra("orderList" , items); 
       startActivity(newActivity); 
      } 
     }); 

3. Get the list in NewActivity class 

List<Order> itemsList = (List<Order>)getIntent.getSerializableExtra("orderList"); 

Hope it helps! 
関連する問題