/
MainAdapter.java
118 lines (98 loc) · 4.25 KB
/
MainAdapter.java
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
package com.azhar.pendaftaranvaksin.ui.main;
import android.content.Context;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import androidx.cardview.widget.CardView;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.RecyclerView;
import com.azhar.pendaftaranvaksin.R;
import com.azhar.pendaftaranvaksin.networking.ApiClient;
import com.azhar.pendaftaranvaksin.ui.inputdata.InputDataActivity;
import com.azhar.pendaftaranvaksin.utils.Constant;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.load.resource.bitmap.CenterCrop;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import java.util.List;
/**
* Created by Azhar Rivaldi on 16-10-2021
* Youtube Channel : https://bit.ly/2PJMowZ
* Github : https://github.com/AzharRivaldi
* Twitter : https://twitter.com/azharrvldi_
* Instagram : https://www.instagram.com/azhardvls_
* LinkedIn : https://www.linkedin.com/in/azhar-rivaldi
*/
public class MainAdapter extends RecyclerView.Adapter<MainAdapter.ViewHolder> {
private List<ModelMain> modelMainList;
private Context mContext;
public MainAdapter(Context context, List<ModelMain> modelMain) {
this.mContext = context;
this.modelMainList = modelMain;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item_main, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
final ModelMain data = modelMainList.get(position);
if (data.getStrPhoto() != null) {
holder.tvStatus.setText("Available");
holder.tvStatus.setTextColor(ContextCompat.getColor(mContext, R.color.green));
Glide.with(mContext)
.load(ApiClient.PHOTO + data.getStrPhoto() + ApiClient.API_KEY)
.transform(new CenterCrop(), new RoundedCorners(25))
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(holder.imagePlace);
holder.cvListMain.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Constant.namaRS = modelMainList.get(position).getStrName();
Intent intent = new Intent(mContext, InputDataActivity.class);
mContext.startActivity(intent);
}
});
} else {
holder.tvStatus.setText("Not Available");
holder.tvStatus.setTextColor(ContextCompat.getColor(mContext, R.color.red));
Glide.with(mContext)
.load(R.drawable.ic_hospital)
.transform(new CenterCrop(), new RoundedCorners(25))
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(holder.imagePlace);
holder.cvListMain.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(mContext, "Vaksinasi Tidak Tersedia Disini!", Toast.LENGTH_SHORT).show();
}
});
}
holder.tvPlaceName.setText(data.getStrName());
holder.tvVicinity.setText(data.getStrVicinity());
}
@Override
public int getItemCount() {
return modelMainList.size();
}
public static class ViewHolder extends RecyclerView.ViewHolder {
public CardView cvListMain;
public ImageView imagePlace;
public TextView tvPlaceName;
public TextView tvVicinity;
public TextView tvStatus;
public ViewHolder(View itemView) {
super(itemView);
cvListMain = itemView.findViewById(R.id.cvListMain);
imagePlace = itemView.findViewById(R.id.imagePlace);
tvPlaceName = itemView.findViewById(R.id.tvPlaceName);
tvVicinity = itemView.findViewById(R.id.tvVicinity);
tvStatus = itemView.findViewById(R.id.tvStatus);
}
}
}