* show for the initial UI.
*/
public Header onGetInitialHeader() {
- return mHeaders.get(0);
+ for (int i=0; i<mHeaders.size(); i++) {
+ Header h = mHeaders.get(i);
+ if (h.fragment != null) {
+ return h;
+ }
+ }
+ throw new IllegalStateException("Must have at least one header with a fragment");
}
/**
getFragmentManager().popBackStack(BACK_STACK_PREFS,
FragmentManager.POP_BACK_STACK_INCLUSIVE);
} else {
+ if (header.fragment == null) {
+ throw new IllegalStateException("can't switch to header that has no fragment");
+ }
int direction = mHeaders.indexOf(header) - mHeaders.indexOf(mCurHeader);
switchToHeaderInner(header.fragment, header.fragmentArguments, direction);
setSelectedHeader(header);