Search in sources :

Example 1 with SmoothProgressBar

use of fr.castorflex.android.smoothprogressbar.SmoothProgressBar in project philm by chrisbanes.

the class ListFragment method onCreateView.

/**
     * Provide default implementation to return a simple list view.  Subclasses
     * can override to replace with their own layout.  If doing so, the
     * returned view hierarchy <em>must</em> have a ListView whose id
     * is {@link android.R.id#list android.R.id.list} and can optionally
     * have a sibling view id {@link android.R.id#empty android.R.id.empty}
     * that is to be shown when the list is empty.
     *
     * <p>If you are overriding this method with your own custom content,
     * consider including the standard layout {@link android.R.layout#list_content}
     * in your layout file, so that you continue to retain all of the standard
     * behavior of ListFragment.  In particular, this is currently the only
     * way to have the built-in indeterminant progress state be shown.
     */
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    final Context context = getActivity();
    FrameLayout contentRoot = new FrameLayout(context);
    // ------------------------------------------------------------------
    ProgressBar progress = new ProgressBar(context, null, android.R.attr.progressBarStyleLarge);
    progress.setId(INTERNAL_PROGRESS_ID);
    progress.setVisibility(View.GONE);
    FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
    lp.gravity = Gravity.CENTER;
    contentRoot.addView(progress, lp);
    // ------------------------------------------------------------------
    FrameLayout lframe = new FrameLayout(context);
    lframe.setId(INTERNAL_LIST_CONTAINER_ID);
    FontTextView tv = new FontTextView(getActivity());
    tv.setId(INTERNAL_EMPTY_ID);
    tv.setGravity(Gravity.CENTER);
    tv.setFont(FontTextView.FONT_ROBOTO_CONDENSED);
    final int p = getResources().getDimensionPixelSize(R.dimen.spacing_major);
    tv.setPadding(p, p, p, p);
    lframe.addView(tv, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));
    E lv = createListView(context, inflater);
    lv.setId(android.R.id.list);
    lframe.addView(lv, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));
    contentRoot.addView(lframe, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));
    // ------------------------------------------------------------------
    ProgressBar secondaryProgress = new SmoothProgressBar(context, null, android.R.attr.progressBarStyleHorizontal);
    secondaryProgress.setId(INTERNAL_SECONDARY_PROGRESS_ID);
    secondaryProgress.setVisibility(View.GONE);
    secondaryProgress.setIndeterminate(true);
    contentRoot.addView(secondaryProgress, new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT, Gravity.BOTTOM));
    View root;
    if (getParentFragment() == null) {
        final LinearLayout toolbarRoot = new LinearLayout(context);
        toolbarRoot.setOrientation(LinearLayout.VERTICAL);
        // Finally, add the Toolbar
        inflater.inflate(R.layout.include_toolbar, toolbarRoot, true);
        toolbarRoot.addView(contentRoot, new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 0, 1f));
        root = toolbarRoot;
    } else {
        root = contentRoot;
    }
    root.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
    return root;
}
Also used : Context(android.content.Context) ViewGroup(android.view.ViewGroup) FontTextView(app.philm.in.view.FontTextView) AbsListView(android.widget.AbsListView) TextView(android.widget.TextView) View(android.view.View) AdapterView(android.widget.AdapterView) FrameLayout(android.widget.FrameLayout) FontTextView(app.philm.in.view.FontTextView) SmoothProgressBar(fr.castorflex.android.smoothprogressbar.SmoothProgressBar) ProgressBar(android.widget.ProgressBar) SmoothProgressBar(fr.castorflex.android.smoothprogressbar.SmoothProgressBar) LinearLayout(android.widget.LinearLayout)

Aggregations

Context (android.content.Context)1 View (android.view.View)1 ViewGroup (android.view.ViewGroup)1 AbsListView (android.widget.AbsListView)1 AdapterView (android.widget.AdapterView)1 FrameLayout (android.widget.FrameLayout)1 LinearLayout (android.widget.LinearLayout)1 ProgressBar (android.widget.ProgressBar)1 TextView (android.widget.TextView)1 FontTextView (app.philm.in.view.FontTextView)1 SmoothProgressBar (fr.castorflex.android.smoothprogressbar.SmoothProgressBar)1