package org.robobinding.widget.listview;
import org.robobinding.widget.view.AbstractVisibility;
import android.view.View;
import android.widget.ListView;
/**
*
* @since 1.0
* @version $Revision: 1.0 $
* @author Cheng Wei
*/
public class FooterVisibility extends AbstractVisibility {
private ListView listView;
private View footerView;
public FooterVisibility(ListView listView, View footerView) {
this.listView = listView;
this.footerView = footerView;
}
@Override
public void makeGone() {
if (listView.getAdapter() == null) {
return;
}
if (listView.getFooterViewsCount() > 0) {
listView.removeFooterView(footerView);
}
}
@Override
public void makeVisible() {
addFooterViewIfNotExist();
footerView.setVisibility(View.VISIBLE);
}
@Override
protected void makeInvisible() {
addFooterViewIfNotExist();
footerView.setVisibility(View.INVISIBLE);
}
private void addFooterViewIfNotExist() {
if (listView.getFooterViewsCount() == 0) {
listView.addFooterView(footerView);
}
}
}