-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathTodoAdapter.java
More file actions
70 lines (54 loc) · 2.01 KB
/
TodoAdapter.java
File metadata and controls
70 lines (54 loc) · 2.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package com.example.todoappjava;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
public class TodoAdapter extends RecyclerView.Adapter<TodoAdapter.ViewHolder> {
OnItemClickListener mListener;
List<TodoData> list;
public TodoAdapter(List<TodoData> list, OnItemClickListener listener){
this.list = list;
this.mListener = listener;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.todo_item, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
TodoData todoData = list.get(position);
holder.tvTodoId.setText(String.valueOf(todoData.getId()));
holder.tvTodoText.setText(todoData.getTodoText());
}
@Override
public int getItemCount() {
return list.size();
}
class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
private TextView tvTodoId, tvTodoText;
private ImageButton btnDelete;
public ViewHolder(@NonNull View itemView) {
super(itemView);
tvTodoText = itemView.findViewById(R.id.tvTodoText);
btnDelete = itemView.findViewById(R.id.btnDelete);
// to do id linked to textview
tvTodoId = itemView.findViewById(R.id.tvTodoId);
btnDelete.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if(getAdapterPosition() != RecyclerView.NO_POSITION){
mListener.onDeleteClick(getAdapterPosition());
}
}
}
interface OnItemClickListener{
void onDeleteClick(int position);
}
}