Search in sources :

Example 6 with PtrHandler

use of in.srain.cube.views.ptr.PtrHandler in project android-Ultra-Pull-To-Refresh by liaohuqiu.

the class ViewPagerActivity method initCateViews.

private void initCateViews() {
    int startIndex = 0;
    mCatTabPageIndicator = (TabPageIndicator) findViewById(R.id.view_pager_tab_indicator);
    mFragmentViewPager = (ViewPager) this.findViewById(R.id.view_pager_view_pager);
    ArrayList<ViewPagerFragment> list = new ArrayList<ViewPagerFragment>();
    for (int i = 1; i <= 8; i++) {
        list.add(ViewPagerFragment.create(i));
    }
    mPagerAdapter = new FragmentViewPagerAdapter(getSupportFragmentManager(), list);
    mFragmentViewPager.setAdapter(mPagerAdapter);
    mCatTabPageIndicator.setViewHolderCreator(new TabPageIndicator.ViewHolderCreator() {

        @Override
        public TabPageIndicator.ViewHolderBase createViewHolder() {
            return new HomeCatItemViewHolder();
        }
    });
    mCatTabPageIndicator.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {

        @Override
        public void onPageSelected(int i) {
            switchTo(i);
        }
    });
    mCatTabPageIndicator.setViewPager(mFragmentViewPager);
    mPtrFrame = (PtrClassicFrameLayout) findViewById(R.id.view_pager_ptr_frame);
    mPtrFrame.disableWhenHorizontalMove(true);
    mPtrFrame.setPtrHandler(new PtrHandler() {

        @Override
        public boolean checkCanDoRefresh(PtrFrameLayout frame, View content, View header) {
            return mPagerAdapter.checkCanDoRefresh();
        }

        @Override
        public void onRefreshBegin(PtrFrameLayout frame) {
            mPagerAdapter.updateData();
        }
    });
    mFragmentViewPager.setCurrentItem(startIndex);
}
Also used : TabPageIndicator(in.srain.cube.views.pager.TabPageIndicator) PtrHandler(in.srain.cube.views.ptr.PtrHandler) PtrFrameLayout(in.srain.cube.views.ptr.PtrFrameLayout) ArrayList(java.util.ArrayList) ViewPager(android.support.v4.view.ViewPager) AbsListView(android.widget.AbsListView) TextView(android.widget.TextView) View(android.view.View)

Example 7 with PtrHandler

use of in.srain.cube.views.ptr.PtrHandler in project android-Ultra-Pull-To-Refresh by liaohuqiu.

the class MaterialStyleFragment method createView.

@Override
protected View createView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_materail_style, null);
    setHeaderTitle(R.string.ptr_demo_material_style);
    final CubeImageView imageView = (CubeImageView) view.findViewById(R.id.material_style_image_view);
    final ImageLoader imageLoader = ImageLoaderFactory.create(getContext());
    mPtrFrameLayout = (PtrFrameLayout) view.findViewById(R.id.material_style_ptr_frame);
    // header
    final MaterialHeader header = new MaterialHeader(getContext());
    int[] colors = getResources().getIntArray(R.array.google_colors);
    header.setColorSchemeColors(colors);
    header.setLayoutParams(new PtrFrameLayout.LayoutParams(-1, -2));
    header.setPadding(0, LocalDisplay.dp2px(15), 0, LocalDisplay.dp2px(10));
    header.setPtrFrameLayout(mPtrFrameLayout);
    mPtrFrameLayout.setLoadingMinTime(1000);
    mPtrFrameLayout.setDurationToCloseHeader(1500);
    mPtrFrameLayout.setHeaderView(header);
    mPtrFrameLayout.addPtrUIHandler(header);
    mPtrFrameLayout.postDelayed(new Runnable() {

        @Override
        public void run() {
            mPtrFrameLayout.autoRefresh(false);
        }
    }, 100);
    mPtrFrameLayout.setPtrHandler(new PtrHandler() {

        @Override
        public boolean checkCanDoRefresh(PtrFrameLayout frame, View content, View header) {
            return true;
        }

        @Override
        public void onRefreshBegin(final PtrFrameLayout frame) {
            if (mImageHasLoaded) {
                long delay = (long) (1000 + Math.random() * 2000);
                delay = Math.max(0, delay);
                delay = 0;
                frame.postDelayed(new Runnable() {

                    @Override
                    public void run() {
                        frame.refreshComplete();
                    }
                }, delay);
            } else {
                mStartLoadingTime = System.currentTimeMillis();
                imageView.loadImage(imageLoader, mUrl);
            }
        }
    });
    ImageLoadHandler imageLoadHandler = new ImageLoadHandler() {

        @Override
        public void onLoading(ImageTask imageTask, CubeImageView cubeImageView) {
        }

        @Override
        public void onLoadFinish(ImageTask imageTask, final CubeImageView cubeImageView, final BitmapDrawable bitmapDrawable) {
            mImageHasLoaded = true;
            long delay = Math.max(0, 1000 - (System.currentTimeMillis() - mStartLoadingTime));
            delay = 0;
            mPtrFrameLayout.postDelayed(new Runnable() {

                @Override
                public void run() {
                    if (cubeImageView != null && bitmapDrawable != null) {
                        TransitionDrawable w1 = new TransitionDrawable(new Drawable[] { new ColorDrawable(Color.WHITE), (Drawable) bitmapDrawable });
                        imageView.setImageDrawable(w1);
                        w1.startTransition(200);
                    }
                    mPtrFrameLayout.refreshComplete();
                }
            }, delay);
        }

        @Override
        public void onLoadError(ImageTask imageTask, CubeImageView cubeImageView, int i) {
        }
    };
    imageLoader.setImageLoadHandler(imageLoadHandler);
    return view;
}
Also used : TransitionDrawable(android.graphics.drawable.TransitionDrawable) PtrFrameLayout(in.srain.cube.views.ptr.PtrFrameLayout) PtrHandler(in.srain.cube.views.ptr.PtrHandler) ColorDrawable(android.graphics.drawable.ColorDrawable) BitmapDrawable(android.graphics.drawable.BitmapDrawable) Drawable(android.graphics.drawable.Drawable) TransitionDrawable(android.graphics.drawable.TransitionDrawable) ImageLoadHandler(in.srain.cube.image.iface.ImageLoadHandler) BitmapDrawable(android.graphics.drawable.BitmapDrawable) CubeImageView(in.srain.cube.image.CubeImageView) View(android.view.View) MaterialHeader(in.srain.cube.views.ptr.header.MaterialHeader) ColorDrawable(android.graphics.drawable.ColorDrawable) CubeImageView(in.srain.cube.image.CubeImageView) ImageTask(in.srain.cube.image.ImageTask) ImageLoader(in.srain.cube.image.ImageLoader)

Example 8 with PtrHandler

use of in.srain.cube.views.ptr.PtrHandler in project UltimateRecyclerView by cymcsg.

the class PullToRefreshActivity method refreshingMaterial.

//    void refreshingRental() {
//        rentalsSunHeaderView = new RentalsSunHeaderView(this);
//        rentalsSunHeaderView.setUp(ultimateRecyclerView.mPtrFrameLayout);
//
//        ultimateRecyclerView.mPtrFrameLayout.removePtrUIHandler(materialHeader);
//        ultimateRecyclerView.mPtrFrameLayout.removePtrUIHandler(storeHouseHeader);
//        ultimateRecyclerView.mPtrFrameLayout.setHeaderView(rentalsSunHeaderView);
//        ultimateRecyclerView.mPtrFrameLayout.addPtrUIHandler(rentalsSunHeaderView);
//        ultimateRecyclerView.mPtrFrameLayout.autoRefresh(false);
//        ultimateRecyclerView.mPtrFrameLayout.setPtrHandler(new PtrHandler() {
//            @Override
//            public boolean checkCanDoRefresh(PtrFrameLayout ptrFrameLayout, View view, View view2) {
//                boolean canbePullDown = PtrDefaultHandler.checkContentCanBePulledDown(ptrFrameLayout, view, view2);
//                return canbePullDown;
//            }
//
//            @Override
//            public void onRefreshBegin(PtrFrameLayout ptrFrameLayout) {
//                ptrFrameLayout.postDelayed(new Runnable() {
//                    @Override
//                    public void run() {
//                        simpleRecyclerViewAdapter.insert("Refresh things", 0);
//                        //   ultimateRecyclerView.scrollBy(0, -50);
//                        linearLayoutManager.scrollToPosition(0);
//                        ultimateRecyclerView.mPtrFrameLayout.refreshComplete();
//                        changeHeaderHandler.sendEmptyMessageDelayed(3, 500);
//                    }
//                }, 1800);
//            }
//        });
//
//    }
void refreshingMaterial() {
    materialHeader = new MaterialHeader(this);
    int[] colors = getResources().getIntArray(R.array.google_colors);
    materialHeader.setColorSchemeColors(colors);
    materialHeader.setLayoutParams(new PtrFrameLayout.LayoutParams(-1, -2));
    materialHeader.setPadding(0, 15, 0, 10);
    materialHeader.setPtrFrameLayout(ultimateRecyclerView.mPtrFrameLayout);
    ultimateRecyclerView.mPtrFrameLayout.autoRefresh(false);
    ultimateRecyclerView.mPtrFrameLayout.removePtrUIHandler(storeHouseHeader);
    ultimateRecyclerView.mPtrFrameLayout.setHeaderView(materialHeader);
    ultimateRecyclerView.mPtrFrameLayout.addPtrUIHandler(materialHeader);
    ultimateRecyclerView.mPtrFrameLayout.setPtrHandler(new PtrHandler() {

        @Override
        public boolean checkCanDoRefresh(PtrFrameLayout frame, View content, View header) {
            return true;
        }

        @Override
        public void onRefreshBegin(final PtrFrameLayout frame) {
            frame.postDelayed(new Runnable() {

                @Override
                public void run() {
                    //  simpleRecyclerViewAdapter.insertLast("Refresh things");
                    //   ultimateRecyclerView.scrollBy(0, -50);
                    //   linearLayoutManager.scrollToPosition(0);
                    ultimateRecyclerView.mPtrFrameLayout.refreshComplete();
                //   changeHeaderHandler.sendEmptyMessageDelayed(2, 500);
                }
            }, 1800);
        }
    });
}
Also used : MaterialHeader(in.srain.cube.views.ptr.header.MaterialHeader) PtrFrameLayout(in.srain.cube.views.ptr.PtrFrameLayout) PtrHandler(in.srain.cube.views.ptr.PtrHandler) UltimateRecyclerView(com.marshalchen.ultimaterecyclerview.UltimateRecyclerView) View(android.view.View)

Example 9 with PtrHandler

use of in.srain.cube.views.ptr.PtrHandler in project UltimateRecyclerView by cymcsg.

the class PullToRefreshActivity method refreshingString.

void refreshingString() {
    storeHouseHeader = new StoreHouseHeader(this);
    //   header.setPadding(0, 15, 0, 0);
    storeHouseHeader.initWithString("XCode Big Air");
    //  header.initWithStringArray(R.array.akta);
    ultimateRecyclerView.mPtrFrameLayout.removePtrUIHandler(materialHeader);
    ultimateRecyclerView.mPtrFrameLayout.setHeaderView(storeHouseHeader);
    ultimateRecyclerView.mPtrFrameLayout.addPtrUIHandler(storeHouseHeader);
    ultimateRecyclerView.mPtrFrameLayout.autoRefresh(false);
    ultimateRecyclerView.mPtrFrameLayout.setPtrHandler(new PtrHandler() {

        @Override
        public boolean checkCanDoRefresh(PtrFrameLayout ptrFrameLayout, View view, View view2) {
            boolean canbePullDown = PtrDefaultHandler.checkContentCanBePulledDown(ptrFrameLayout, view, view2);
            return canbePullDown;
        }

        @Override
        public void onRefreshBegin(PtrFrameLayout ptrFrameLayout) {
            ptrFrameLayout.postDelayed(new Runnable() {

                @Override
                public void run() {
                    onFireRefresh();
                }
            }, 1800);
        }
    });
}
Also used : PtrHandler(in.srain.cube.views.ptr.PtrHandler) PtrFrameLayout(in.srain.cube.views.ptr.PtrFrameLayout) StoreHouseHeader(in.srain.cube.views.ptr.header.StoreHouseHeader) UltimateRecyclerView(com.marshalchen.ultimaterecyclerview.UltimateRecyclerView) View(android.view.View)

Example 10 with PtrHandler

use of in.srain.cube.views.ptr.PtrHandler in project UltimateRecyclerView by cymcsg.

the class PullToRefreshActivity method refreshingStringArray.

//  RentalsSunHeaderView rentalsSunHeaderView;
private void refreshingStringArray() {
    storeHouseHeader = new StoreHouseHeader(this);
    storeHouseHeader.setPadding(0, 15, 0, 0);
    // using string array from resource xml file
    storeHouseHeader.initWithStringArray(R.array.storehouse);
    ultimateRecyclerView.mPtrFrameLayout.setDurationToCloseHeader(1500);
    ultimateRecyclerView.mPtrFrameLayout.removePtrUIHandler(materialHeader);
    ultimateRecyclerView.mPtrFrameLayout.setHeaderView(storeHouseHeader);
    ultimateRecyclerView.mPtrFrameLayout.addPtrUIHandler(storeHouseHeader);
    ultimateRecyclerView.mPtrFrameLayout.autoRefresh(false);
    // change header after loaded
    ultimateRecyclerView.mPtrFrameLayout.addPtrUIHandler(new PtrUIHandler() {

        @Override
        public void onUIReset(PtrFrameLayout frame) {
            mLoadTime++;
            if (mLoadTime % 2 == 0) {
                storeHouseHeader.setScale(1);
                storeHouseHeader.initWithStringArray(R.array.storehouse);
            } else {
                storeHouseHeader.setScale(0.5f);
                storeHouseHeader.initWithStringArray(R.array.akta);
            }
        }

        @Override
        public void onUIRefreshPrepare(PtrFrameLayout frame) {
        }

        @Override
        public void onUIRefreshBegin(PtrFrameLayout frame) {
        }

        @Override
        public void onUIRefreshComplete(PtrFrameLayout frame) {
        }

        @Override
        public void onUIPositionChange(PtrFrameLayout frame, boolean isUnderTouch, byte status, PtrIndicator ptrIndicator) {
        }
    });
    ultimateRecyclerView.mPtrFrameLayout.setPtrHandler(new PtrHandler() {

        @Override
        public boolean checkCanDoRefresh(PtrFrameLayout frame, View content, View header) {
            return true;
        }

        @Override
        public void onRefreshBegin(final PtrFrameLayout frame) {
            frame.postDelayed(new Runnable() {

                @Override
                public void run() {
                    // frame.refreshComplete();
                    //                        simpleRecyclerViewAdapter.insertLast("Refresh things");
                    //   ultimateRecyclerView.scrollBy(0, -50);
                    linearLayoutManager.scrollToPosition(0);
                    ultimateRecyclerView.mPtrFrameLayout.refreshComplete();
                    if (mLoadTime % 2 == 0)
                        changeHeaderHandler.sendEmptyMessageDelayed(1, 500);
                }
            }, 2000);
        }
    });
}
Also used : PtrUIHandler(in.srain.cube.views.ptr.PtrUIHandler) PtrFrameLayout(in.srain.cube.views.ptr.PtrFrameLayout) PtrHandler(in.srain.cube.views.ptr.PtrHandler) StoreHouseHeader(in.srain.cube.views.ptr.header.StoreHouseHeader) PtrIndicator(in.srain.cube.views.ptr.indicator.PtrIndicator) UltimateRecyclerView(com.marshalchen.ultimaterecyclerview.UltimateRecyclerView) View(android.view.View)

Aggregations

View (android.view.View)17 PtrFrameLayout (in.srain.cube.views.ptr.PtrFrameLayout)17 PtrHandler (in.srain.cube.views.ptr.PtrHandler)17 CubeImageView (in.srain.cube.image.CubeImageView)8 StoreHouseHeader (in.srain.cube.views.ptr.header.StoreHouseHeader)7 ImageLoader (in.srain.cube.image.ImageLoader)5 AdapterView (android.widget.AdapterView)3 UltimateRecyclerView (com.marshalchen.ultimaterecyclerview.UltimateRecyclerView)3 JsonData (in.srain.cube.request.JsonData)3 PtrUIHandler (in.srain.cube.views.ptr.PtrUIHandler)3 MaterialStyleFragment (in.srain.cube.views.ptr.demo.ui.MaterialStyleFragment)3 PtrIndicator (in.srain.cube.views.ptr.indicator.PtrIndicator)3 BitmapDrawable (android.graphics.drawable.BitmapDrawable)2 ColorDrawable (android.graphics.drawable.ColorDrawable)2 Drawable (android.graphics.drawable.Drawable)2 TransitionDrawable (android.graphics.drawable.TransitionDrawable)2 ImageView (android.widget.ImageView)2 ListView (android.widget.ListView)2 TextView (android.widget.TextView)2 ImageTask (in.srain.cube.image.ImageTask)2