package dev.malikkurosaki.gombalinkita.Adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.TextView;
import java.util.List;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import dev.malikkurosaki.gombalinkita.Pojo.PojoUtama;
import dev.malikkurosaki.gombalinkita.R;
public class AdapterUtama extends RecyclerView.Adapter<AdapterUtama.VHolder> {
private Context context;
private List<PojoUtama> list;
private LayoutInflater inflater;
public AdapterUtama(Context context, List<PojoUtama> list) {
this.context = context;
this.list = list;
this.inflater = LayoutInflater.from(context);
}
@NonNull
@Override
public VHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new VHolder(inflater.inflate(R.layout.adapter_utama, parent, false));
}
@Override
public void onBindViewHolder(@NonNull VHolder holder, int position) {
PojoUtama utama = list.get(position);
holder.bind(utama);
holder.tombolPerpanjang.setOnClickListener(v->{
boolean diperpanjang = utama.isMemanjang();
utama.setMemanjang(!diperpanjang);
notifyItemChanged(position);
});
}
@Override
public int getItemCount() {
return list.size();
}
public class VHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
@BindView(R.id.wadahJudul)
TextView wadahJudul;
@BindView(R.id.tombolPerpanjang)
ImageButton tombolPerpanjang;
@BindView(R.id.wadahIsi)
TextView wadahIsi;
@BindView(R.id.tombolPlay)
ImageButton tombolPlay;
@BindView(R.id.containerPerpanjangan)
LinearLayout containerPerpanjangan;
public VHolder(@NonNull View itemView) {
super(itemView);
ButterKnife.bind(this, itemView);
//R.layout.adapter_utama
}
@Override
public void onClick(View view) {
}
private void bind(PojoUtama utama) {
boolean diperpanjang = utama.isMemanjang();
containerPerpanjangan.setVisibility(diperpanjang?View.VISIBLE:View.GONE);
wadahJudul.setText(utama.getJudul());
wadahIsi.setText(utama.getIsi());
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:cardUseCompatPadding="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical">
<TextView
android:id="@+id/wadahJudul"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="loading"
android:textColor="@color/colorHitam"
android:textStyle="bold"
android:paddingEnd="8dp"
android:paddingStart="8dp"
android:textSize="18sp"
android:singleLine="true"/>
<ImageButton
android:id="@+id/tombolPerpanjang"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@color/colorTransparantn"
android:padding="8dp"
android:src="@drawable/ic_expand_more_black_24dp"/>
</LinearLayout>
<LinearLayout
android:id="@+id/containerPerpanjangan"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="8dp">
<TextView
android:id="@+id/wadahIsi"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="loading"
android:textStyle="bold"
android:padding="16dp"
android:textSize="24sp"
android:textColor="@color/color6"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end">
<ImageButton
android:id="@+id/tombolPlay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@color/colorTransparantn"
android:src="@drawable/ic_volume_up_black_24dp"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout>