Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class LoadJustHardPostFromFireBase implements ItemsForPost{
- private ArrayList<String> exerciseHard;
- private ArrayList<String> otherData;
- private int type;
- public ArrayList getTrainingEx(DatabaseReference myRef, final FirebaseUser user, int id)
- { получаю данные в список из firebase return exerciseHard;}
- public ArrayList getOtherData(DatabaseReference myRef, final FirebaseUser user, long id)
- {получаю вторые данные в список из firebase return otherData;}
- public class LoadJustCardioPostFromFireBase implements ItemsForPost{
- private ArrayList<String> exerciseCard;
- private ArrayList<String> otherData;
- private int type;
- public ArrayList getCardioEx(DatabaseReference myRef, final FirebaseUser user, int id)
- { получаю данные в список из firebase return exerciseCard;}
- public ArrayList getOtherData(DatabaseReference myRef, final FirebaseUser user, long id)
- {получаю вторые данные в список из firebase return otherData;}
- public class LoadFullGroupPostFromFireBase implements ItemsForPost{
- private ArrayList<String> otherData;
- private ArrayList<String> exerciseHard;
- private ArrayList<String> exerciseCard;
- private int type;
- public ArrayList getTrainingEx(DatabaseReference myRef, final FirebaseUser user, int id)
- { получаю данные в список из firebase return exerciseHard;}
- public ArrayList getCardioEx(DatabaseReference myRef, final FirebaseUser user, int id)
- { получаю данные в список из firebase return exerciseCard;}
- public ArrayList getOtherData(DatabaseReference myRef, final FirebaseUser user, long id)
- {получаю вторые данные в список из firebase return otherData;}
- public interface ItemsForPost {
- int getItemType ();
- }
- public class RecyclerAdapterForPost extends RecyclerView.Adapter<RecyclerAdapterForPost.myVH3> {
- ArrayList<ItemsForPost> items;
- private final int TYPE_ITEM_HARD = 1;
- private final int TYPE_ITEM_CARDIO = 2;
- private final int TYPE_ITEM_GROUP = 0;
- private FirebaseAuth mAuth = FirebaseAuth.getInstance();
- private FirebaseUser user = mAuth.getCurrentUser();
- private DatabaseReference myRef = FirebaseDatabase.getInstance().getReference();
- public RecyclerAdapterForPost(ArrayList<ItemsForPost> items){
- this.items = items;
- }
- @Override
- public myVH3 onCreateViewHolder(ViewGroup parent, int viewType) {
- View v;
- switch (viewType) {
- case TYPE_ITEM_HARD:
- v = LayoutInflater.from(parent.getContext()).inflate(R.layout.conteiner_post_hard, parent, false);
- break;
- case TYPE_ITEM_CARDIO:
- v = LayoutInflater.from(parent.getContext()).inflate(R.layout.conteiner_post_cardio, parent, false);
- break;
- default:
- v = LayoutInflater.from(parent.getContext()).inflate(R.layout.conteiner_post_group, parent, false);
- }
- return new myVH3(v);
- }
- @Override
- public void onBindViewHolder(myVH3 holder, int position) {
- int type = getItemViewType(position);
- switch (type) {
- case TYPE_ITEM_HARD:{
- LoadJustHardPostFromFireBase loadHard = (LoadJustHardPostFromFireBase) items.get(position);
- ArrayList<String> dataOne = loadHard.getTrainingEx(myRef, user, position);
- ArrayList<String> dataThree = loadHard.getOtherData(myRef,user,position);
- }
- break;
- case TYPE_ITEM_CARDIO:{
- LoadJustCardioPostFromFireBase loadCardio = (LoadJustCardioPostFromFireBase) items.get(position);
- ArrayList<String> dataTwo = loadCardio.getCardioEx(myRef,user,position);
- ArrayList<String> dataThree = loadCardio.getOtherData(myRef,user,position);
- }
- break;
- case TYPE_ITEM_GROUP:{
- LoadFullGroupPostFromFireBase loadGroup = (LoadFullGroupPostFromFireBase) items.get(position);
- ArrayList<String> dataOne = loadGroup.getTrainingEx(myRef, user, position);
- ArrayList<String> dataTwo = loadGroup.getCardioEx(myRef,user,position);
- ArrayList<String> dataThree = loadGroup.getOtherData(myRef,user,position);
- }
- break;
- }
- }
- @Override
- public int getItemCount() {
- return items.size();
- }
- @Override
- public int getItemViewType(int position) {
- // определяем какой тип в текущей позиции
- int type = items.get(position).getItemType();
- if (type == 1) return TYPE_ITEM_HARD;
- else if (type == 2) return TYPE_ITEM_CARDIO;
- else return TYPE_ITEM_GROUP;
- }
- public class myVH3 extends RecyclerView.ViewHolder{
- TextView name_person_post;
- TextView data_person_post;
- TextView tonnageNow;
- TextView kpwNow;
- TextView intencityNow;
- TextView timeForTrain;
- TextView exCount;
- TextView myWeightFromProfile;
- public myVH3(View itemView) {
- super(itemView);
- name_person_post= itemView.findViewById(R.id.name_person_post);
- data_person_post= itemView.findViewById(R.id.data_person_post);
- tonnageNow= itemView.findViewById(R.id.tonnageNow);
- kpwNow= itemView.findViewById(R.id.kpwNow);
- intencityNow= itemView.findViewById(R.id.intencityNow);
- timeForTrain= itemView.findViewById(R.id.timeForTrain);
- exCount= itemView.findViewById(R.id.exCCount);
- myWeightFromProfile= itemView.findViewById(R.id.myWeightFromProfile);
- }
- }
- }
- LoadFullGroupPostFromFireBase loadGroup = (LoadFullGroupPostFromFireBase) items.get(position);
- ArrayList<String> dataOne = loadGroup.getTrainingEx(myRef, user, position);
- ArrayList<String> dataOne = new ArrayList(); внутри onBindViewHolder
- ....
- private ArrayList<ItemsForPost> items = new ArrayList<>();
- public View onCreateView(...){
- items.add(new LoadJustCardioPostFromFireBase(2));
- }
- ....
Add Comment
Please, Sign In to add comment