I want to click the button to add View
into RecyclerView
but implement methods of adapter are not being called.
Here is my code:
recyclerView = (RecyclerView)findViewById(R.id.lecturer_recycler_view);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(CourseCreating.this));
recAdapter = new CourseDetailAdapter();
recyclerView.setAdapter(recAdapter);
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(CourseCreating.this, "click", Toast.LENGTH_SHORT).show();
recAdapter.addSchedule(new Schedule());
}
});
CourseDetailAdapter.class
public class CourseDetailAdapter extends RecyclerView.Adapter<CourseDetailAdapter.ViewHolder>{
private static List<Schedule> scheduleList;
public static class ViewHolder extends RecyclerView.ViewHolder {
public Spinner spnDay;
public AppCompatEditText etxtRoom;
public EditText etxtStarttime, etxtEndtime;
public ImageButton btnDelete;
public ViewHolder(View itemView) {
super(itemView);
spnDay = (Spinner)itemView.findViewById(R.id.detail_day);
etxtRoom = (AppCompatEditText)itemView.findViewById(R.id.detail_room);
etxtStarttime = (EditText)itemView.findViewById(R.id.detail_starttime);
etxtEndtime = (EditText)itemView.findViewById(R.id.detail_endtime);
btnDelete = (ImageButton)itemView.findViewById(R.id.detail_delete);
}
}
public void addSchedule(Schedule schedule) {
if(scheduleList == null) scheduleList = new ArrayList<>();
scheduleList.add(schedule);
Log.d("LOGIN", scheduleList.toString());
notifyDataSetChanged();
}
@Override
public CourseDetailAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
Log.d("LOGIN", "Holder");
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_detail, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
Log.d("LOGIN", "Bindview");
}
@Override
public int getItemCount() {
return 0;
}
}
I want to add detail_item
layout for typing data, so I'm not sure I do correct way or not