import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import io.taptalk.TapTalk.Model.TAPMessageModel;
import io.taptalk.TapTalk.View.Adapter.TAPBaseChatViewHolder;
public class MyCustomBubbleViewHolder extends TAPBaseChatViewHolder {
private ImageView imageView;
private TextView textView;
private MyCustomBubbleListener listener; // The listener that you just created above will be used here
// Add MyCustomBubbleListener to the constructor parameter
MyCustomBubbleViewHolder(ViewGroup parent, int itemLayoutId, MyCustomBubbleListener listener) {
super(parent, itemLayoutId);
// Bind views on constructor
imageView = itemView.findViewById(R.id.imageView);
textView = itemView.findViewById(R.id.textView);
// Pass the listener from parameter
this.listener = listener;
protected void onBind(TAPMessageModel message, int index) {
super.onBind(message, index);
textView.setText(message.getBody());
imageView.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
// Trigger listener and pass the clicked message
listener.onBubbleTapped(message);