package cn.daixiaodong.myapp.fragment.common;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.widget.SwipeRefreshLayout;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public abstract class SwipeRefreshBaseFragment extends BaseFragment {
protected SwipeRefreshLayout mSwipeRefreshLayout;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(getLayoutResId(), container, false);
}
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
initViews(view);
}
protected void initViews(View view) {
mSwipeRefreshLayout = (SwipeRefreshLayout) view.findViewById(getSwipeRefreshLayoutResId());
if (mSwipeRefreshLayout == null) {
return;
}
mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
refreshData();
}
});
}
protected void setRefreshing(boolean refreshing) {
if (mSwipeRefreshLayout == null) {
return;
}
if (mSwipeRefreshLayout.isRefreshing()) {
mSwipeRefreshLayout.setRefreshing(refreshing);
}
}
protected void refreshData() {
}
public abstract int getLayoutResId();
public abstract int getSwipeRefreshLayoutResId();
}