import android.os.Bundle;
+import android.support.v4.widget.SwipeRefreshLayout;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
/**
* TODO extending SherlockListFragment instead of SherlockFragment
*/
-public class ExtendedListFragment extends SherlockFragment implements OnItemClickListener {
+public class ExtendedListFragment extends SherlockFragment implements OnItemClickListener, SwipeRefreshLayout.OnRefreshListener{
private static final String TAG = ExtendedListFragment.class.getSimpleName();
protected ExtendedListView mList;
+ private SwipeRefreshLayout mRefreshLayout;
+
public void setListAdapter(ListAdapter listAdapter) {
mList.setAdapter(listAdapter);
mList.invalidate();
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
Log_OC.e(TAG, "onCreateView");
//mList = new ExtendedListView(getActivity());
+
View v = inflater.inflate(R.layout.list_fragment, null);
mList = (ExtendedListView)(v.findViewById(R.id.list_root));
mList.setOnItemClickListener(this);
setReferencePosition(referencePosition);
}
+ // Pull down refresh
+ mRefreshLayout = (SwipeRefreshLayout) v.findViewById(R.id.swipe_refresh_files);
+ mRefreshLayout.setColorScheme(R.color.refresh_color_start,
+ R.color.refresh_color_middle_1,
+ R.color.refresh_color_middle_2,
+ R.color.refresh_color_end);
+ mRefreshLayout.setOnRefreshListener(this);
+
return v;
}
// to be @overriden
}
+ @Override
+ public void onRefresh() {
+ // to be @overriden
+
+ }
+
+ /**
+ * Enables swipe gesture
+ */
+ public void enableSwipe() {
+ mRefreshLayout.setEnabled(true);
+ }
+
+ /**
+ * Disables swipe gesture. It prevents manual gestures but keeps the option you show
+ * refreshing programmatically.
+ */
+ public void disableSwipe() {
+ mRefreshLayout.setEnabled(false);
+ }
+
}