package com.marverenic.music.adapter;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.marverenic.adapter.EmptyState;
import com.marverenic.adapter.EnhancedViewHolder;
import com.marverenic.music.R;
public abstract class BasicEmptyState extends EmptyState
implements View.OnClickListener {
@Override
public final View onCreateView(RecyclerView.Adapter<EnhancedViewHolder> adapter,
final ViewGroup parent) {
final View layout = LayoutInflater
.from(parent.getContext())
.inflate(R.layout.instance_empty, parent, false);
parent.requestLayout();
layout.setMinimumHeight(parent.getHeight());
layout.findViewById(R.id.empty_button).setOnClickListener(this);
layout.findViewById(R.id.empty_button2).setOnClickListener(this);
return layout;
}
@Override
public final void onUpdate(View emptyStateView) {
TextView message = ((TextView) emptyStateView.findViewById(R.id.empty_message));
TextView detail = ((TextView) emptyStateView.findViewById(R.id.empty_message_detail));
TextView button1Label = ((TextView) emptyStateView.findViewById(R.id.empty_button_label));
TextView button2Label = ((TextView) emptyStateView.findViewById(R.id.empty_button2_label));
View button1 = emptyStateView.findViewById(R.id.empty_button);
View button2 = emptyStateView.findViewById(R.id.empty_button2);
message.setText(getMessage());
detail.setText(getDetail());
String b1Label = getAction1Label();
String b2Label = getAction2Label();
if (b1Label.isEmpty()) {
button1.setVisibility(View.GONE);
} else {
button1.setVisibility(View.VISIBLE);
button1Label.setText(b1Label);
}
if (b2Label.isEmpty()) {
button2.setVisibility(View.GONE);
} else {
button2.setVisibility(View.VISIBLE);
button2Label.setText(b2Label);
}
}
public String getMessage() {
return "";
}
public String getDetail() {
return "";
}
public String getAction1Label() {
return "";
}
public String getAction2Label() {
return "";
}
public void onAction1() {
}
public void onAction2() {
}
@Override
public final void onClick(View v) {
if (v.getId() == R.id.empty_button) {
onAction1();
} else if (v.getId() == R.id.empty_button2) {
onAction2();
}
}
}