blob: 28075aaadc63797a46a91049de97e4efda2655a3 [file] [log] [blame]
package org.robolectric.shadows;
import android.view.View;
import android.widget.HeaderViewListAdapter;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.List;
import org.robolectric.annotation.Implements;
import org.robolectric.annotation.RealObject;
@SuppressWarnings({"UnusedDeclaration"})
@Implements(ListView.class)
public class ShadowListView extends ShadowAbsListView {
@RealObject private ListView realListView;
public List<View> getHeaderViews() {
HeaderViewListAdapter adapter = (HeaderViewListAdapter) realListView.getAdapter();
ArrayList<View> headerViews = new ArrayList<>();
int headersCount = adapter.getHeadersCount();
for (int i = 0; i < headersCount; i++) {
headerViews.add(adapter.getView(i, null, realListView));
}
return headerViews;
}
public List<View> getFooterViews() {
HeaderViewListAdapter adapter = (HeaderViewListAdapter) realListView.getAdapter();
ArrayList<View> footerViews = new ArrayList<>();
int offset = adapter.getHeadersCount() + adapter.getCount() - adapter.getFootersCount();
int itemCount = adapter.getCount();
for (int i = offset; i < itemCount; i++) {
footerViews.add(adapter.getView(i, null, realListView));
}
return footerViews;
}
}