Как реализовать любимую функциональность в переработке? - PullRequest
0 голосов
/ 15 апреля 2020

Я новичок в android. Я реализовал программу повторного просмотра, которая выбирает список из Firebase Firestore. Теперь я хочу добавить подобную функциональность с этим переработчиком. Я просто хочу, чтобы, когда пользователь нажимал кнопку сердца, менялся цвет кнопки сердца. и когда снова щелкнете по нему, снова получите его прежнее состояние. и это состояние сохранить локально. означает, что если пользователь закроет приложение и снова в следующий раз откроет, состояние сердца приложения останется таким же, как и в прошлый раз. ниже приведен мой код повторного просмотра, который я реализовал в фрагменте Home с внутренним адаптером.

фрагмент Home:

    Query query = mFirestore.collection("Cities");
            FirestoreRecyclerOptions<Cities> options = new FirestoreRecyclerOptions.Builder<Cities>()
                    .setQuery(query, Cities.class)
                    .build();


            mCitiesAdapter = new FirestoreRecyclerAdapter<Cities, CitiesViewHolder>(options) {
                @NonNull
                @Override
                public CitiesViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
                    View citiesView = LayoutInflater.from(parent.getContext()).inflate(R.layout.cardview_cities_you_must_visit, parent, false);
                    return new CitiesViewHolder(citiesView);
                }

                @Override
                protected void onBindViewHolder(@NonNull CitiesViewHolder citiesViewHolder, int position, @NonNull Cities model) {
                    citiesViewHolder.vCityName.setText(model.getmCityName() + ",");
                    citiesViewHolder.vStateName.setText(model.getmStateName());

                }
            };


            mFirestoreList = view.findViewById(R.id.mCitiesRecyclerView);
            mFirestoreList.setHasFixedSize(true);
            mFirestoreList.setLayoutManager(new LinearLayoutManager(getActivity(),LinearLayoutManager.HORIZONTAL, false));
            mFirestoreList.setAdapter(mCitiesAdapter);

            return view;
        }

        @Override
        public void onItemPressed(int position, ImageSlider forwardData) {

        }

        private class CitiesViewHolder extends RecyclerView.ViewHolder {
   ........................... findViewById...............; 
            }
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...