Java 如何从另一个活动的不同回收视图开始创建新的回收视图

Java 如何从另一个活动的不同回收视图开始创建新的回收视图,java,android,android-studio,Java,Android,Android Studio,有人能向我解释一下,我如何创建一个新的回收,并从另一个活动中的另一个回收视图向该回收视图添加项目吗 基本上我想创建一个购物车,现在,我从Firebase数据集中检索数据并将其显示在循环视图中,但现在我想将此数据发送到购物车(购物车位于另一个活动中),我可以发送数据,但我不知道如何在新活动的新回收视图中显示数据。我需要这个,因为我想看到的项目,我添加到购物清单,这样我就可以支付 下面我会附上一张照片来更好地解释我自己 我的问题是,我无法理解如何在新活动中将发送的数据再次添加到回收视图中 我是and

有人能向我解释一下,我如何创建一个新的回收,并从另一个活动中的另一个回收视图向该回收视图添加项目吗

基本上我想创建一个购物车,现在,我从Firebase数据集中检索数据并将其显示在循环视图中,但现在我想将此数据发送到购物车(购物车位于另一个活动中),我可以发送数据,但我不知道如何在新活动的新回收视图中显示数据。我需要这个,因为我想看到的项目,我添加到购物清单,这样我就可以支付

下面我会附上一张照片来更好地解释我自己

我的问题是,我无法理解如何在新活动中将发送的数据再次添加到回收视图中

我是android新手,所以这是我第一次做这件事

提前感谢您的帮助

我的代码:

SearchItemsActivity:

package com.example.ipill;

import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;


import android.content.Context;
import android.content.Intent;
import android.nfc.Tag;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.Toast;
import com.firebase.ui.database.FirebaseRecyclerAdapter;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.Query;

import java.util.ArrayList;
import java.util.List;


public class FirebaseSearch extends AppCompatActivity {

private EditText mSearchField;
private ImageButton mSearchBtn;
private ImageButton AddToCart;
private ImageButton Cart;

String searchText="";

private RecyclerView mResultList;
private DatabaseReference mUserDatabase;




private static ArrayList<Users> arrayList = new ArrayList<>();
public static int cart_count = 0;


RecyclerView productRecyclerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_firebasesearch);

    mUserDatabase = FirebaseDatabase.getInstance().getReference("Users");

    mSearchField = findViewById(R.id.search_field);
    mSearchBtn   = findViewById(R.id.search_btn);
    mResultList  = findViewById(R.id.result_list_cart);
    AddToCart    = findViewById(R.id.imageButton2);
    Cart         = findViewById(R.id.cartButton);

    mResultList.setHasFixedSize(true);
    mResultList.setLayoutManager(new LinearLayoutManager(this));

    mSearchBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            searchText = mSearchField.getText().toString();
            firebaseUserSearch(searchText);
        }
    });

    Cart.setOnClickListener(new View.OnClickListener() {
        private Object Tag="Activity";

        @Override
        public void onClick(View v) {
            if (cart_count < 1) {

            } else {
                startActivity(new Intent(FirebaseSearch.this, CartActivity.class));
            }
        }
    });
 }



   private void firebaseUserSearch(String searchText) {
    Toast.makeText(FirebaseSearch.this, "Started Search", Toast.LENGTH_LONG).show();
    Query firebaseSearchQuery = 
    mUserDatabase.orderByChild("Name").startAt(searchText).endAt(searchText + "\uf8ff");
    FirebaseRecyclerAdapter<Users, UsersViewHolder> firebaseRecyclerAdapter = new             
    FirebaseRecyclerAdapter<Users, UsersViewHolder>(
            Users.class,
            R.layout.list_layout,
            UsersViewHolder.class,
            firebaseSearchQuery
    ) {
        @Override
        protected void populateViewHolder(UsersViewHolder viewHolder, Users model, int position) {
            viewHolder.getDetails(model.getName(), model.getSurname(),model.getPrice());
            viewHolder.setDetails(model.getName(), model.getSurname(),model.getPrice());
        }
    };
    mResultList.setAdapter(firebaseRecyclerAdapter);
}


@Override
protected void onStart() {
    super.onStart();
    invalidateOptionsMenu();
}

// View Holder Class
public static class UsersViewHolder extends RecyclerView.ViewHolder {
    View mView;
    String nome;
    String surname;
    Long prezzo;
    public UsersViewHolder(View itemView) {
        super(itemView);
        mView = itemView;
        ImageButton addToCart = (ImageButton)mView.findViewById(R.id.imageButton2);
        addToCart.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                cart_count++;
                Context context = v.getContext();
                Intent intent = new Intent(context, CartActivity.class);
                intent.putExtra("Name",nome);
                intent.putExtra("Surname",surname);
                intent.putExtra("Prezzo",Long.toString(prezzo));
                context.startActivity(intent);
            }
        });
    }

    public void getDetails(String name,String cognome,Long price){
        nome=name;
        surname=cognome;
        prezzo=price;
    }


    public void setDetails(String name, String surname, Long price) {

        TextView user_name = (TextView) mView.findViewById(R.id.name_text);
        TextView user_surname = (TextView)mView.findViewById(R.id.status_text);
        TextView user_price = (TextView)mView.findViewById(R.id.price);

        user_name.setText(name);
        user_surname.setText(surname);
        user_price.setText(Long.toString(price));

        }
    }
}
package com.example.ipill;
导入androidx.appcompat.app.appcompat活动;
导入androidx.recyclerview.widget.LinearLayoutManager;
导入androidx.recyclerview.widget.recyclerview;
导入android.content.Context;
导入android.content.Intent;
导入android.nfc.Tag;
导入android.os.Bundle;
导入android.util.Log;
导入android.view.view;
导入android.widget.EditText;
导入android.widget.ImageButton;
导入android.widget.TextView;
导入android.widget.Toast;
导入com.firebase.ui.database.FirebaseRecyclerAdapter;
导入com.google.firebase.database.DatabaseReference;
导入com.google.firebase.database.FirebaseDatabase;
导入com.google.firebase.database.Query;
导入java.util.ArrayList;
导入java.util.List;
公共类FirebaseSearch扩展了AppCompative活动{
私有编辑文本字段;
专用图像按钮mSearchBtn;
私有图像按钮AddToCart;
私家车;
字符串searchText=“”;
私人回收站查看mResultList;
私人数据库参考博物馆数据库;
私有静态ArrayList ArrayList=新ArrayList();
公共静态int cart_计数=0;
回收视图产品回收视图;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u firebasesearch);
mUserDatabase=FirebaseDatabase.getInstance().getReference(“用户”);
mSearchField=findviewbyd(R.id.search\u字段);
mSearchBtn=findviewbyd(R.id.search\u btn);
mResultList=findviewbyd(R.id.result\u list\u cart);
AddToCart=findViewById(R.id.imageButton2);
购物车=findViewById(R.id.cartButton);
mResultList.setHasFixedSize(true);
mResultList.setLayoutManager(新的LinearLayoutManager(this));
mSearchBtn.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
searchText=mSearchField.getText().toString();
firebaseUserSearch(searchText);
}
});
Cart.setOnClickListener(新视图.OnClickListener(){
私有对象标记=“活动”;
@凌驾
公共void onClick(视图v){
如果(购物车计数<1){
}否则{
startActivity(新意图(FirebaseSearch.this、CartActivity.class));
}
}
});
}
私有void firebaseUserSearch(字符串搜索文本){
Toast.makeText(FirebaseSearch.this,“开始搜索”,Toast.LENGTH_LONG.show();
查询firebaseSearchQuery=
mUserDatabase.orderByChild(“名称”).startAt(searchText).endAt(searchText+“\uf8ff”);
FirebaseRecyclerAdapter FirebaseRecyclerAdapter=新
火基回收适配器(
用户.class,
R.layout.list_布局,
UsersViewHolder.class,
firebaseSearchQuery
) {
@凌驾
受保护的void populateViewHolder(UsersViewHolder、Users模型、int位置){
viewHolder.getDetails(model.getName()、model.getNames()、model.getPrice());
viewHolder.setDetails(model.getName()、model.getNames()、model.getPrice());
}
};
mResultList.setAdapter(firebaseRecyclerAdapter);
}
@凌驾
受保护的void onStart(){
super.onStart();
无效操作菜单();
}
//视图持有者类
公共静态类UsersViewHolder扩展了RecyclerView.ViewHolder{
视图视图;
字符串名称;
串姓;
长前奏曲;
公共用户查看文件夹(查看项目视图){
超级(项目视图);
mView=项目视图;
ImageButton addToCart=(ImageButton)mView.findViewById(R.id.imageButton2);
addToCart.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
购物车计数++;
Context=v.getContext();
意向意向=新意向(上下文,CartActivity.class);
意向。额外(“名称”,nome);
意图。putExtra(“姓氏”,姓氏);
intent.putExtra(“Prezzo”,Long.toString(Prezzo));
背景。开始触觉(意图);
}
});
}
public void getDetails(字符串名称、字符串cognome、长价格){
nome=名称;
姓氏=同源;
prezzo=价格;
}
public void setDetails(字符串名称、字符串姓氏、长价格){
TextView用户名=(TextView)mView.findviewbyd(R.id.name\u text);
TextView用户_姓氏=(TextView)mView.findViewById(R.id.status_text);
TextView用户价格=(TextView)mView.findViewById(R.id.price);
user_name.setText(名称);
用户_姓氏.setText(姓氏);
user_price.setText(Long.toString(price));
}
}
}
在这里输入代码

我接收数据并创建回收视图的第二个活动

     package com.example.ipill;

   import android.content.Context;
   import android.os.Build;
   import android.os.Bundle;
   import android.util.Log;
   import android.view.View;
   import android.widget.Button;
   import android.widget.LinearLayout;
   import android.widget.TextView;
   import android.widget.Toast;
   import android.widget.Toolbar;

   import androidx.annotation.RequiresApi;
   import androidx.appcompat.app.AppCompatActivity;
   import androidx.recyclerview.widget.LinearLayoutManager;
   import androidx.recyclerview.widget.RecyclerView;

   import java.util.ArrayList;
   import java.util.Collection;


  public class CartActivity extends AppCompatActivity {

   public static TextView grandTotal;
   public static int grandTotalplus;
   // create a temp list and add cartitem list
   public static ArrayList<Users> temparraylist;
   RecyclerView cartRecyclerView;

   Button proceedToBook;
Context context;
String name,surname,price;
private static ArrayList<Users> arrayList2 = new ArrayList<>();


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_cart);
    context = this;
    temparraylist = new ArrayList<>();
    proceedToBook = findViewById(R.id.buyNow);
    grandTotal = findViewById(R.id.TotalPrice);

    cartRecyclerView=findViewById(R.id.cartList);

    String passedArg = getIntent().getExtras().getString("Name");
    name=passedArg;


    String passedArg2 = getIntent().getExtras().getString("Surname");
    surname=passedArg2;



    String passedArg3 = getIntent().getExtras().getString("Price");
    price=passedArg3;

    System.out.println("DATA"+name+surname+price);

    cartRecyclerView.setHasFixedSize(true);
    cartRecyclerView.setLayoutManager(new LinearLayoutManager(this));
}

}
package com.example.ipill;
导入android.content.Context;
我