package com.marshalchen.common.demoofui.ultraPullToRefresh;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import com.marshalchen.common.commonUtils.logUtils.Logs;
import com.marshalchen.common.commonUtils.uiUtils.BasicUiUtils;
import com.marshalchen.common.demoofui.R;
import in.srain.cube.views.ptr.PtrDefaultHandler;
import in.srain.cube.views.ptr.PtrFrameLayout;
import in.srain.cube.views.ptr.PtrHandler;
import in.srain.cube.views.ptr.header.StoreHouseHeader;
/**
* Created by cym on 14-12-16.
*/
public class UltraPullToRefreshStoreHouseActivity extends ActionBarActivity {
PtrFrameLayout mPtrFrameLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout);
setContentView(R.layout.ultra_pull_refresh_store_house_activity_main);
mPtrFrameLayout = (PtrFrameLayout) findViewById(R.id.store_house_ptr_frame);
// the following are default settings
mPtrFrameLayout.setResistance(1.7f);
mPtrFrameLayout.setRatioOfHeaderHeightToRefresh(1.2f);
mPtrFrameLayout.setDurationToClose(200);
mPtrFrameLayout.setDurationToCloseHeader(1000);
// default is false
mPtrFrameLayout.setPullToRefresh(false);
// default is true
mPtrFrameLayout.setKeepHeaderWhenRefresh(true);
final StoreHouseHeader header = new StoreHouseHeader(this);
header.setPadding(0, BasicUiUtils.dip2px(this, 15.0f), 0, 0);
/**
* using a string, support: A-Z 0-9 - .
* you can add more letters by {@link in.srain.cube.views.ptr.header.StoreHousePath#addChar}
*/
header.initWithString("Marshal Chen");
// header.initWithStringArray(R.array.akta);
mPtrFrameLayout.setHeaderView(header);
mPtrFrameLayout.addPtrUIHandler(header);
// mPtrFrameLayout.postDelayed(new Runnable() {
// @Override
// public void run() {
// // ptrFrame.autoRefresh();
// }
// }, 150);
mPtrFrameLayout.setPtrHandler(new PtrHandler() {
@Override
public boolean checkCanDoRefresh(PtrFrameLayout ptrFrameLayout, View view, View view2) {
boolean canbePullDown = PtrDefaultHandler.checkContentCanBePulledDown(ptrFrameLayout, view, view2);
Logs.d("canbepull----" + canbePullDown);
return canbePullDown;
}
@Override
public void onRefreshBegin(PtrFrameLayout ptrFrameLayout) {
ptrFrameLayout.postDelayed(new Runnable() {
@Override
public void run() {
mPtrFrameLayout.refreshComplete();
}
}, 1800);
}
});
}
}