Advertisement
rama_astadipati

AdapterBerita

Sep 20th, 2018
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.54 KB | None | 0 0
  1. adapter/adapter_berita
  2.  
  3. package net.ramastudio.sitara20.adapter;
  4.  
  5. import android.content.Context;
  6. import android.content.Intent;
  7. import android.support.annotation.NonNull;
  8. import android.support.v7.widget.RecyclerView;
  9. import android.view.LayoutInflater;
  10. import android.view.View;
  11. import android.view.ViewGroup;
  12. import android.widget.ImageView;
  13. import android.widget.TextView;
  14.  
  15. import com.squareup.picasso.Picasso;
  16.  
  17. import net.ramastudio.sitara20.R;
  18. import net.ramastudio.sitara20.activity.BeritaActivity;
  19. import net.ramastudio.sitara20.activity.BeritaDetilActivity;
  20. import net.ramastudio.sitara20.model.BeritaItem;
  21.  
  22. import java.util.List;
  23.  
  24. public class AdapterBerita extends RecyclerView.Adapter<AdapterBerita.MyViewHolder> {
  25.  
  26. Context context;
  27. List<BeritaItem> berita;
  28.  
  29.  
  30. public AdapterBerita(Context context, List<BeritaItem> berita) {
  31. // Inisialisasi
  32. this.context = context;
  33. this.berita = berita;
  34. }
  35.  
  36. @NonNull
  37. @Override
  38. public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
  39. View view = LayoutInflater.from(context)
  40. .inflate(R.layout.adapter_berita, parent, false);
  41.  
  42. MyViewHolder holder = new MyViewHolder(view);
  43. return holder;
  44. }
  45.  
  46. @Override
  47. public void onBindViewHolder(@NonNull MyViewHolder holder, final int position) {
  48. // Set widget
  49. holder.tvJudul.setText(berita.get(position).getJudulBerita());
  50. holder.tvTglTerbit.setText(berita.get(position).getTanggalPosting());
  51.  
  52. // Dapatkan url gambar
  53. final String urlGambarBerita = "" + berita.get(position).getFoto();
  54. // Set image ke widget dengna menggunakan Library Piccasso
  55. // krena imagenya dari internet
  56. Picasso.with(context).load(urlGambarBerita).into(holder.ivGambarBerita);
  57.  
  58. // Event klik ketika item list nya di klik ke detil
  59. holder.itemView.setOnClickListener(new View.OnClickListener() {
  60. @Override
  61. public void onClick(View view) {
  62. // Mulai activity Detail
  63. Intent varIntent = new Intent(context, BeritaDetilActivity.class);
  64. // sisipkan data ke intent
  65. varIntent.putExtra("JDL_BERITA", berita.get(position).getJudulBerita());
  66. varIntent.putExtra("TGL_BERITA", berita.get(position).getTanggalPosting());
  67. varIntent.putExtra("PNS_BERITA", berita.get(position).getPenulis());
  68. varIntent.putExtra("PNS_BERITA", urlGambarBerita);
  69. varIntent.putExtra("ISI_BERITA", berita.get(position).getIsiBerita());
  70.  
  71. // method startActivity cma bisa di pake di activity/fragment
  72. // jadi harus masuk ke context dulu
  73. context.startActivity(varIntent);
  74. }
  75. });
  76.  
  77. }
  78.  
  79. @Override
  80. public int getItemCount() {
  81. return berita.size();
  82. }
  83.  
  84.  
  85. public class MyViewHolder extends RecyclerView.ViewHolder {
  86. // Deklarasi widget
  87. ImageView ivGambarBerita;
  88. TextView tvJudul, tvTglTerbit, tvPenulis;
  89. public MyViewHolder(View itemView) {
  90. super(itemView);
  91. // inisialisasi widget
  92. ivGambarBerita = (ImageView) itemView.findViewById(R.id.ivPosterBerita);
  93. tvJudul = (TextView) itemView.findViewById(R.id.tvJudulBerita);
  94. tvTglTerbit = (TextView) itemView.findViewById(R.id.tvTglTerbit);
  95. tvPenulis = (TextView) itemView.findViewById(R.id.tvPenulis);
  96. }
  97. }
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement