<color name="actionbar_start_color">#1D2D44</color>
<color name="actionbar_end_color">#1D2D44</color>
+ <color name="refresh_color_start">#00ddff</color>
+ <color name="refresh_color_middle_1">#1D2D44</color>
+ <color name="refresh_color_middle_2">#FFFFFF</color>
+ <color name="refresh_color_end">#00ddff</color>
+
<!-- Button -->
<color name="button_text_color">#000000</color>
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);
+ }
+
}
import android.app.Activity;
import android.os.Bundle;
+import android.support.v4.widget.SwipeRefreshLayout;
import android.view.ContextMenu;
import android.view.MenuInflater;
import android.view.MenuItem;
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Log_OC.e(TAG, "onActivityCreated() start");
+
mAdapter = new FileListListAdapter(getSherlockActivity(), mContainerActivity);
if (savedInstanceState != null) {