Commit 51fcdcfc authored by iman Fauzi's avatar iman Fauzi

make payment method

parent 76d1c2da
......@@ -10,5 +10,7 @@ public class PaymentActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_payment);
}
}
\ No newline at end of file
package com.yono.messeripos;
public class PaymentAdapter {
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.cardview.widget.CardView;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.DataSource;
import com.bumptech.glide.load.engine.GlideException;
import com.bumptech.glide.request.RequestListener;
import com.bumptech.glide.request.RequestOptions;
import com.bumptech.glide.request.target.Target;
import java.util.ArrayList;
public class PaymentAdapter extends RecyclerView.Adapter<PaymentAdapter.ViewHolder> {
private ArrayList<PaymentModel> paymentModels;
Context context;
int getPosition = -1;
public PaymentAdapter(ArrayList<PaymentModel> paymentModels, MainActivity mainActivity) {
this.paymentModels = paymentModels;
this.context = mainActivity;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext())
.inflate(R.layout.activity_payment, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
holder.cardView.setTag(position);
holder.radioButton.setChecked(position == getPosition);
final PaymentModel paymentModel = paymentModels.get(position);
ImageView imageView = holder.logoComp;
Glide.with(context)
.load(paymentModel.getUrl())
.apply(new RequestOptions().placeholder(R.drawable.skeleton))
.into(imageView);
}
@Override
public int getItemCount() {
return paymentModels.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
public CardView cardView;
public ImageView logoComp;
public RadioButton radioButton;
public TextView textView;
public ViewHolder(@NonNull View itemView) {
super(itemView);
cardView = itemView.findViewById(R.id.cvPayment);
logoComp = itemView.findViewById(R.id.ivLogo);
radioButton = itemView.findViewById(R.id.rbPayment);
textView = itemView.findViewById(R.id.tvPayment);
Log.d("ViewHolder: ", textView.toString());
cardView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
getPosition = getAdapterPosition();
notifyDataSetChanged();
if (getPosition == Integer.parseInt(cardView.getTag().toString())) radioButton.setChecked(true);
else radioButton.setChecked(false);
}
});
}
}
}
package com.yono.messeripos;
public class PaymentModel {
private String url;
private String bank;
public PaymentModel(String url, String bank) {
this.url = url;
this.bank = bank;
}
public void setUrl(String url) {
this.url = url;
}
public String getUrl() {
return url;
}
public String getBank() {
return bank;
}
public void setBank(String bank) {
this.bank = bank;
}
}
\ No newline at end of file
......@@ -21,6 +21,18 @@
android:layout_height="wrap_content"
android:padding="15dp">
<View
android:id="@+id/icon"
android:layout_width="131dp"
android:layout_height="39dp"
android:layout_margin="15dp"
android:visibility="invisible"
android:layout_gravity="center_vertical"
android:background="@drawable/skeleton"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<ImageView
android:id="@+id/ivLogo"
android:layout_width="131dp"
......@@ -29,6 +41,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tvPayment"
android:layout_width="wrap_content"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment