简体   繁体   中英

How to pass data from fragment to another fragment in android using java?

Now I got all data from API and I displayed it in Homefragment now I want the title to the next fragment which is called overviewfragment. Actually overviewfragment is in emptyactivity so now how to pass data from one fragment to another fragment.

class MostCrowdedRecyclerAdapter {
    @NonNull
    @Override
    public TopViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.home_layout_layout_5, parent, false);
        return new TopViewHolder(view);
    }

    @SuppressLint("SetTextI18n")
    @Override
    public void onBindViewHolder(@NonNull TopViewHolder holder, int position) {

        holder.restaurantName.setText(list.get(position).getName());
        holder.distance.setText(list.get(position).getDistance() + " Mile");
        vybeAPI = Float.valueOf(list.get(position).getVybe());
        holder.vybe.setText(vybeAPI + "%");
        //   setAnimation(holder.itemView, position);
        holder.v.setOnClickListener(v -> {                                        <--here I did Intent i = new Intent(v.getContext(), EmptyActivity.class);
            i.putExtra("Restaurant", getItemId(position));
            context.startActivity(i);
        });
    }

    @Override
    public int getItemCount() {
        int limit = 6;
        return Math.min(list.size(), limit);
    }


    OverViewFragment:
    String data;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        View view = inflater.inflate(R.layout.fragment_over_view, container, false);
        TextView singletitle = view.findViewById(R.id.single);
        try {
            data = String.valueOf(Intent.getIntent("Restaurant").getExtras());
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }
    }
}

Here I need to pass title from homefragment to overviewfragment but overviewfragment is in emptyactivity.

Need to two steps:

  1. Send data from Homefragment to EmptyActivity.

    for this, you could use putExtra() method.

  2. Set data from EmptyActivity to OverviewFragment.

    for this, you could use setArgument() method.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM