обновить и удалить с помощью кнопок на firebase - PullRequest
0 голосов
/ 07 октября 2019

доброго времени суток каждому разработчику, я работаю над проектом под названием e-School, у меня трудные времена с адаптером Firebase и операциями с сыром, у меня есть просмотр карт в обзоре переработчика и кнопка «обновить» и «удалить» на этомCardView, я хочу, чтобы вызвать Button edit_t & Button delete_t ссылка на изображение здесь Проверить изображение , а также структуру базы здесь Изображение дБ , но я не могу заставить кнопки работать, нужна помощь! код следующий

// TeacherViewHolder.java

public class TeachersViewHolder extends RecyclerView.ViewHolder{
public CircleImageView teacherImage;
public TextView teacherName,teacherDesignation;

public TeachersViewHolder(@NonNull View itemView) {
    super(itemView);
    teacherImage = itemView.findViewById(R.id.image_teacher);
    teacherName =  itemView.findViewById(R.id.teacher_nome);
    teacherDesignation = itemView.findViewById(R.id.teacher_designation);
}}

// TeachersAdapter.java

public class TeachersAdapter extends RecyclerView.Adapter<TeachersAdapter.TeacherAdapterViewHolder> {

private ProgressDialog LoadingBar;
FirebaseAuth teacherAuth;
DatabaseReference teacherRef;
FirebaseDatabase db;

public Context c;
public ArrayList<Modal_Teachers> arrayList;

public TeachersAdapter(Context c, ArrayList<Modal_Teachers> arrayList){
    this.c= c;
    this.arrayList = arrayList;

}
@Override
public int getItemCount() {
    return arrayList.size();
}

@Override
public long getItemId(int position) {
    return position;
}

@NonNull
@Override
public TeacherAdapterViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_teachers,parent, false);
    Button edit_t = v.findViewById(R.id.teacher_edit);
    Button delete_t = v.findViewById(R.id.teacher_edit);
    return new TeacherAdapterViewHolder(v);
}

@Override
public void onBindViewHolder(@NonNull final TeacherAdapterViewHolder holder, final int position) {
    final Modal_Teachers sTeachers = arrayList.get(position);
    holder.teacherName.setText(sTeachers.getName());
    holder.teacherDesignation.setText(sTeachers.getQualification());
    Picasso.get().load(sTeachers.getPhotourl()).into(holder.teacherImage);


public class TeacherAdapterViewHolder extends RecyclerView.ViewHolder{
    public CircleImageView teacherImage;
    public TextView teacherName,
            teacherDesignation;
    public Button edit_t, delete_t;

    public TeacherAdapterViewHolder(@NonNull View itemView) {

        super(itemView);
        teacherImage = itemView.findViewById(R.id.image_teacher);
        teacherName =  itemView.findViewById(R.id.teacher_nome);
        teacherDesignation = itemView.findViewById(R.id.teacher_designation);
        edit_t = itemView.findViewById(R.id.teacher_edit);
        delete_t = itemView.findViewById(R.id.teacher_delete);
    }
}
}

1 Ответ

1 голос
/ 08 октября 2019

Итак, ребята, я пытался избавиться от этого, я экспериментировал с написанием большого количества кода и, наконец, нашел решение, и вот решение ..... в TeachersAdapter.java в onBindViewHolder Есть небольшая строка кодачтобы быть написанным, чтобы заставить наши кнопки работать, код следующий: также ссылки на изображения следующего действия где-то здесь нажатие на кнопку обновления в программе повторного просмотра & здесь получение ссылки напользователь и переход к следующему действию

TeachersAdapter.java

       holder.edit_t.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent goUpdateTeacher = new Intent(holder.edit_t.getContext(), UpdateTeacher.class);
            goUpdateTeacher.putExtra("photourl", sTeachers.getPhotourl());
            goUpdateTeacher.putExtra("teacherName", sTeachers.getName());
            goUpdateTeacher.putExtra("teacherDesignation", sTeachers.getQualification());

            holder.edit_t.getContext().startActivity(goUpdateTeacher);
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...