SYMBOL INDEX (229 symbols across 26 files) FILE: app/src/androidTest/java/com/yiyuanliu/flipgank/ExampleInstrumentedTest.java class ExampleInstrumentedTest (line 17) | @RunWith(AndroidJUnit4.class) method useAppContext (line 19) | @Test FILE: app/src/main/java/com/yiyuanliu/flipgank/activity/BaseActivity.java class BaseActivity (line 9) | public abstract class BaseActivity extends AppCompatActivity { method showInfo (line 10) | public abstract void showInfo(String info); method setLoading (line 11) | public abstract void setLoading(boolean isLoading); FILE: app/src/main/java/com/yiyuanliu/flipgank/activity/CategoryActivity.java class CategoryActivity (line 21) | public class CategoryActivity extends BaseActivity { method startActivity (line 26) | public static void startActivity(Context context, String type) { method onCreate (line 41) | @Override method setLoading (line 62) | public void setLoading(boolean isLoading) { method showInfo (line 89) | public void showInfo(String info) { method run (line 105) | @Override method back (line 124) | @OnClick(R.id.back) FILE: app/src/main/java/com/yiyuanliu/flipgank/activity/GankViewActivity.java class GankViewActivity (line 29) | public class GankViewActivity extends BaseActivity { method startActivity (line 32) | public static void startActivity(Context context, GankItem gankItem) { method onCreate (line 47) | @Override method onDestroy (line 88) | @Override method onBackPressed (line 94) | @Override method close (line 103) | @OnClick(R.id.back) method share (line 108) | @OnClick(R.id.share) method open (line 117) | @OnClick(R.id.open_in_browser) method like (line 123) | @OnClick(R.id.like) method showMore (line 133) | @OnClick(R.id.more) method showInfo (line 142) | @Override method setLoading (line 145) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/activity/MainActivity.java class MainActivity (line 29) | public class MainActivity extends BaseActivity { method onCreate (line 40) | @Override method getItem (line 56) | @Override method getCount (line 66) | @Override method getPageTitle (line 71) | @Override method setLoading (line 77) | public void setLoading(boolean isLoading) { method showInfo (line 104) | public void showInfo(String info) { method run (line 119) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/adapter/CategoryAdapter.java class CategoryAdapter (line 26) | public class CategoryAdapter extends RecyclerView.Adapter { method CategoryAdapter (line 29) | public CategoryAdapter() { method addCategory (line 41) | public void addCategory(List categoryList) { method onCreateViewHolder (line 64) | @Override method onBindViewHolder (line 70) | @Override method getItemCount (line 75) | @Override class CategoryVh (line 80) | class CategoryVh extends RecyclerView.ViewHolder { method CategoryVh (line 88) | public CategoryVh(View itemView) { method bind (line 93) | public void bind(String category) { method onClick (line 103) | @OnClick(R.id.click) method getResId (line 109) | private static final int getResId(String category) { FILE: app/src/main/java/com/yiyuanliu/flipgank/adapter/GankAdapter.java class GankAdapter (line 33) | public class GankAdapter extends RecyclerView.Adapter implements GankIte... method GankAdapter (line 44) | public GankAdapter(Context context,Listener listener) { method setHasMore (line 49) | public void setHasMore(boolean hasMore) { method clear (line 57) | public void clear() { method addData (line 64) | public void addData(List gankItemList) { method onCreateViewHolder (line 85) | @Override method onBindViewHolder (line 106) | @Override method getItemViewType (line 126) | @Override method getItemCount (line 135) | @Override method getDataCount (line 140) | public int getDataCount() { method open (line 144) | @Override method showBottomSheet (line 149) | @Override method like (line 158) | @Override class LoadingVh (line 169) | class LoadingVh extends RecyclerView.ViewHolder { method LoadingVh (line 176) | LoadingVh(View itemView) { method bind (line 181) | void bind(boolean hasMore) { class FirstPageVh (line 192) | class FirstPageVh extends RecyclerView.ViewHolder { method FirstPageVh (line 197) | FirstPageVh(View itemView) { method bind (line 202) | void bind(Page page) { class NormalVh (line 209) | class NormalVh extends RecyclerView.ViewHolder { method NormalVh (line 213) | NormalVh(View itemView) { method bind (line 218) | void bind(Page page) { class Page (line 225) | private abstract static class Page { method getType (line 231) | abstract int getType(); method getSize (line 232) | abstract int getSize(); class FirstPage (line 240) | private static class FirstPage extends Page { method gen (line 241) | static FirstPage gen(List gankItemList) { method getSize (line 280) | @Override int getSize() { method getType (line 284) | @Override int getType() { class NormalPage (line 293) | private static class NormalPage extends Page { method gen (line 294) | static NormalPage gen(List gankItemList) { method getSize (line 310) | int getSize() { method getType (line 314) | @Override type Listener (line 320) | public interface Listener { method showInfo (line 321) | void showInfo(String info); FILE: app/src/main/java/com/yiyuanliu/flipgank/data/Api.java type Api (line 12) | public interface Api { method loadData (line 15) | @GET("api/day/{year}/{month}/{day}") FILE: app/src/main/java/com/yiyuanliu/flipgank/data/DataManager.java class DataManager (line 27) | public class DataManager { method getInstance (line 32) | public static DataManager getInstance(Context context) { method DataManager (line 44) | private DataManager(Context context) { method loadCategory (line 53) | public Observable> loadCategory() { method loadNew (line 83) | public Observable> loadNew() { method loadMore (line 96) | public Observable> loadMore(String lastLoaded) { method loadFromDay (line 119) | private Observable> loadFromDay(final String day) { method load (line 144) | private Observable> load(final String dayStr) { method loadFromGank (line 167) | private Observable> loadFromGank(final String dayStr) { method updateLike (line 204) | public void updateLike(GankItem gankItem) { method loadFormDb (line 224) | private Observable> loadFormDb(final String day) { method getLatestUpdate (line 280) | private History getLatestUpdate(boolean shouldHasData) { method updateDb (line 311) | private void updateDb(List gankItemList, String day) { method updateDataDb (line 332) | private void updateDataDb(List gankItemList, String day) { method updateCategory (line 356) | private void updateCategory(List gankItemList) { method updateLoadHistory (line 382) | private void updateLoadHistory(String day, boolean hasData) { method checkLoadHistory (line 394) | private History checkLoadHistory(String day) { method isToday (line 415) | private static boolean isToday(String dayStr) { method isToday (line 421) | private static boolean isToday(int year, int month, int day) { method dayStr2Int (line 430) | private static int[] dayStr2Int(String dayStr) { method dayInt2Str (line 439) | private static String dayInt2Str(int year, int month, int day) { method dayBack (line 449) | private static String dayBack(String dayStr) { method dayNext (line 461) | private static String dayNext(String dayStr) { method getToday (line 473) | private static String getToday() { method isOver (line 483) | private static boolean isOver(String dayStr) { FILE: app/src/main/java/com/yiyuanliu/flipgank/data/GankDbHelper.java class GankDbHelper (line 11) | public class GankDbHelper extends SQLiteOpenHelper { class Contract (line 13) | public static class Contract { method GankDbHelper (line 47) | public GankDbHelper(Context context) { method onCreate (line 51) | @Override method onUpgrade (line 58) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/data/GankItem.java class GankItem (line 15) | public class GankItem implements Serializable { method getImage (line 30) | public String getImage() { FILE: app/src/main/java/com/yiyuanliu/flipgank/data/GankResponse.java class GankResponse (line 10) | public class GankResponse { method hasData (line 15) | public boolean hasData() { FILE: app/src/main/java/com/yiyuanliu/flipgank/data/History.java class History (line 7) | public class History { FILE: app/src/main/java/com/yiyuanliu/flipgank/fragment/AboutFragment.java class AboutFragment (line 21) | public class AboutFragment extends Fragment { method AboutFragment (line 30) | public AboutFragment() { } method newInstance (line 32) | public static AboutFragment newInstance() { method onCreate (line 37) | @Override method onCreateView (line 42) | @Override method onViewCreated (line 48) | @Override method onDestroyView (line 64) | @Override method email (line 70) | @OnClick(R.id.click_email) method github (line 76) | @OnClick(R.id.click_github) FILE: app/src/main/java/com/yiyuanliu/flipgank/fragment/CategoryFragment.java class CategoryFragment (line 31) | public class CategoryFragment extends Fragment { method CategoryFragment (line 40) | public CategoryFragment() { } method newInstance (line 42) | public static CategoryFragment newInstance() { method onCreate (line 47) | @Override method onCreateView (line 52) | @Override method onViewCreated (line 58) | @Override method onDestroyView (line 77) | @Override method call (line 84) | @Override method call (line 91) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/fragment/GankFragment.java class GankFragment (line 39) | public class GankFragment extends Fragment implements FlipRefreshListene... method GankFragment (line 63) | public GankFragment() { } method newInstance (line 65) | public static GankFragment newInstance(String type) { method onCreate (line 73) | @Override method onCreateView (line 83) | @Override method onViewCreated (line 89) | @Override method onDestroyView (line 120) | @Override method onAttach (line 131) | @Override method onDetach (line 139) | @Override method loadMore (line 145) | private void loadMore() { method loadNew (line 163) | private void loadNew() { method call (line 179) | @Override method call (line 193) | @Override method call (line 227) | @Override method onRefresh (line 267) | @Override method onDrag (line 275) | @Override method onLoadMore (line 294) | @Override method showInfo (line 301) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/view/GankBottom.java class GankBottom (line 22) | public class GankBottom extends LinearLayout implements GankItemView { method GankBottom (line 35) | public GankBottom(Context context) { method GankBottom (line 39) | public GankBottom(Context context, AttributeSet attrs) { method GankBottom (line 43) | public GankBottom(Context context, AttributeSet attrs, int defStyleAtt... method onFinishInflate (line 47) | @Override method bind (line 53) | @Override method openUrl (line 69) | @OnClick(R.id.url) FILE: app/src/main/java/com/yiyuanliu/flipgank/view/GankItemView.java type GankItemView (line 8) | public interface GankItemView { method bind (line 9) | void bind(GankItem gankItem, Listener listener); type Listener (line 11) | interface Listener { method open (line 12) | void open(GankItem gankItem); method showBottomSheet (line 13) | void showBottomSheet(GankItem gankItem); method like (line 14) | void like(GankItem gankItem); FILE: app/src/main/java/com/yiyuanliu/flipgank/view/GridItemDecoration.java class GridItemDecoration (line 14) | public class GridItemDecoration extends RecyclerView.ItemDecoration { method GridItemDecoration (line 17) | public GridItemDecoration(Context context) { method getItemOffsets (line 21) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/view/HeadItem.java class HeadItem (line 23) | public class HeadItem extends FrameLayout implements GankItemView { method HeadItem (line 30) | public HeadItem(Context context) { method HeadItem (line 34) | public HeadItem(Context context, AttributeSet attrs) { method HeadItem (line 38) | public HeadItem(Context context, AttributeSet attrs, int defStyleAttr) { method bind (line 42) | public void bind(GankItem gankItem, Listener listener) { method onFinishInflate (line 55) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/view/NormalItem.java class NormalItem (line 28) | public class NormalItem extends FrameLayout implements GankItemView { method NormalItem (line 44) | public NormalItem(Context context) { method NormalItem (line 48) | public NormalItem(Context context, AttributeSet attrs) { method NormalItem (line 52) | public NormalItem(Context context, AttributeSet attrs, int defStyleAtt... method bind (line 56) | public void bind(final GankItem gankItem, final Listener listener) { method onFinishInflate (line 120) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/view/flipview/FlipCard.java class FlipCard (line 15) | public class FlipCard extends FrameLayout { method FlipCard (line 27) | public FlipCard(Context context) { method FlipCard (line 31) | public FlipCard(Context context, AttributeSet attrs) { method FlipCard (line 35) | public FlipCard(Context context, AttributeSet attrs, int defStyleAttr) { method setState (line 43) | public void setState(boolean isForground, float percent) { method draw (line 48) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/view/flipview/FlipLayoutManager.java class FlipLayoutManager (line 13) | public class FlipLayoutManager extends RecyclerView.LayoutManager implem... method FlipLayoutManager (line 23) | public FlipLayoutManager(Context context) { method onRestoreInstanceState (line 27) | @Override method onSaveInstanceState (line 35) | @Override method onRefreshPage (line 40) | public boolean onRefreshPage() { method getRefreshPercent (line 44) | public float getRefreshPercent() { method calculateDistance (line 49) | public int calculateDistance(View view) { method findTargetPosition (line 57) | public int findTargetPosition(int vY) { method generateDefaultLayoutParams (line 81) | @Override method onLayoutChildren (line 86) | @Override method fill (line 103) | private void fill(RecyclerView.Recycler recycler, RecyclerView.State s... method checkPosition (line 154) | private void checkPosition(RecyclerView.State state) { method canScrollVertically (line 165) | @Override method scrollVerticallyBy (line 170) | @Override method scrollToPosition (line 183) | @Override method smoothScrollToPosition (line 191) | @Override method computeScrollVectorForPosition (line 199) | @Override method findSnapView (line 215) | public View findSnapView() { method getItemHeightInPositon (line 227) | private int getItemHeightInPositon() { method shouldLoadMore (line 231) | public boolean shouldLoadMore() { class FlipScroller (line 235) | private class FlipScroller extends LinearSmoothScroller { method FlipScroller (line 238) | public FlipScroller(Context context) { method calculateDyToMakeVisible (line 242) | @Override method calculateDxToMakeVisible (line 251) | @Override class SavedState (line 257) | private static class SavedState implements Parcelable { method SavedState (line 262) | SavedState(int position, int positionOffset, int pendingPosition) { method describeContents (line 268) | @Override method writeToParcel (line 273) | @Override method createFromParcel (line 283) | @Override method newArray (line 292) | @Override FILE: app/src/main/java/com/yiyuanliu/flipgank/view/flipview/FlipRefreshListener.java class FlipRefreshListener (line 10) | public class FlipRefreshListener extends RecyclerView.OnScrollListener { method FlipRefreshListener (line 13) | public FlipRefreshListener(@NonNull Listener listener) { method onScrolled (line 17) | @Override method onScrollStateChanged (line 35) | @Override type Listener (line 54) | public interface Listener { method onRefresh (line 55) | void onRefresh(); method onDrag (line 56) | void onDrag(float percent, boolean shouldRefresh); method onLoadMore (line 57) | void onLoadMore(); FILE: app/src/main/java/com/yiyuanliu/flipgank/view/flipview/MySnap.java class MySnap (line 14) | public class MySnap extends SnapHelper { method calculateDistanceToFinalSnap (line 17) | @Nullable method findSnapView (line 27) | @Nullable method findTargetSnapPosition (line 35) | @Override FILE: app/src/test/java/com/yiyuanliu/flipgank/ExampleUnitTest.java class ExampleUnitTest (line 12) | public class ExampleUnitTest { method addition_isCorrect (line 13) | @Test