排程分页
This commit is contained in:
@@ -22,6 +22,7 @@ import com.ckkj.water.index.mvp.IndexImpl;
|
|||||||
import com.ckkj.water.index.mvp.IndexPresenter;
|
import com.ckkj.water.index.mvp.IndexPresenter;
|
||||||
import com.ckkj.water.network.BaseBean;
|
import com.ckkj.water.network.BaseBean;
|
||||||
import com.ckkj.water.permission.PermissionActivity;
|
import com.ckkj.water.permission.PermissionActivity;
|
||||||
|
import com.ckkj.water.plan.entity.WaterPlanWeekEntity;
|
||||||
import com.ckkj.water.utils.show.ToastUtil;
|
import com.ckkj.water.utils.show.ToastUtil;
|
||||||
import com.maning.mlkitscanner.scan.MNScanManager;
|
import com.maning.mlkitscanner.scan.MNScanManager;
|
||||||
import com.maning.mlkitscanner.scan.callback.act.MNScanCallback;
|
import com.maning.mlkitscanner.scan.callback.act.MNScanCallback;
|
||||||
@@ -154,23 +155,26 @@ public class IndexFragment extends BaseFragment<IndexFragmentLayoutBinding, Inde
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void getDeviceListSuccess(List<WaterDeviceEntity> list, int total) {
|
public void getDeviceListSuccess(List<WaterDeviceEntity> list, int total) {
|
||||||
|
|
||||||
hideDialogLoading();
|
hideDialogLoading();
|
||||||
viewBinding.refresh.finishRefresh(300);
|
List<WaterDeviceEntity> pageList = list == null ? new ArrayList<>() : list;
|
||||||
viewBinding.refresh.finishLoadMore(300);
|
|
||||||
if (mCurrentPage == 1) {
|
if (mCurrentPage == 1) {
|
||||||
|
viewBinding.refresh.finishRefresh(300);
|
||||||
devList.clear(); // 只在刷新时清除
|
devList.clear(); // 只在刷新时清除
|
||||||
devList = list;
|
devList = pageList;
|
||||||
} else {
|
} else {
|
||||||
devList.addAll(list);
|
viewBinding.refresh.finishLoadMore(300);
|
||||||
|
devList.addAll(pageList);
|
||||||
}
|
}
|
||||||
deviceAdapter.setNewData(devList);
|
deviceAdapter.setNewData(devList);
|
||||||
|
|
||||||
// 4. 判断是否还有更多数据
|
// 4. 判断是否还有更多数据
|
||||||
if (total == deviceAdapter.getItemCount() || list == null || list.size() == 0) {
|
if (deviceAdapter.getItemCount() >= total || pageList.size() == 0) {
|
||||||
// ✅ 告诉 SmartRefreshLayout 没有更多数据了
|
// 使用 post 延迟调用,避免内部状态冲突导致的循环调用
|
||||||
viewBinding.refresh.setNoMoreData(true);
|
viewBinding.refresh.postDelayed(() -> viewBinding.refresh.setNoMoreData(true), 300);
|
||||||
viewBinding.relNoMore.setVisibility(View.VISIBLE); // 自定义底部提示“暂无更多数据”
|
viewBinding.relNoMore.setVisibility(View.VISIBLE); // 自定义底部提示"暂无更多数据"
|
||||||
} else {
|
} else {
|
||||||
viewBinding.refresh.setNoMoreData(false); // 重置状态
|
viewBinding.refresh.setNoMoreData(false);
|
||||||
viewBinding.relNoMore.setVisibility(View.GONE);
|
viewBinding.relNoMore.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import com.ckkj.water.utils.manager.ThemeManager;
|
|||||||
import com.ckkj.water.utils.show.ToastUtil;
|
import com.ckkj.water.utils.show.ToastUtil;
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.gyf.immersionbar.ImmersionBar;
|
import com.gyf.immersionbar.ImmersionBar;
|
||||||
|
import com.scwang.smart.refresh.footer.ClassicsFooter;
|
||||||
import com.scwang.smart.refresh.layout.api.RefreshHeader;
|
import com.scwang.smart.refresh.layout.api.RefreshHeader;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -60,8 +61,10 @@ public class WaterPlanFragment extends BaseFragment<WaterPlanFragmentBinding, Wa
|
|||||||
|
|
||||||
RefreshHeader header = new CustomRefreshHeader(mContext);
|
RefreshHeader header = new CustomRefreshHeader(mContext);
|
||||||
viewBinding.refresh.setRefreshHeader(header);
|
viewBinding.refresh.setRefreshHeader(header);
|
||||||
|
viewBinding.refresh.setRefreshFooter(new ClassicsFooter(mContext));
|
||||||
viewBinding.refresh.setOnRefreshListener(layout -> {
|
viewBinding.refresh.setOnRefreshListener(layout -> {
|
||||||
mCurrentPage = 1;
|
mCurrentPage = 1;
|
||||||
|
viewBinding.refresh.setNoMoreData(false);
|
||||||
mPresenter.getWaterPlanList(mCurrentPage);
|
mPresenter.getWaterPlanList(mCurrentPage);
|
||||||
});
|
});
|
||||||
viewBinding.refresh.setOnLoadMoreListener(layout -> {
|
viewBinding.refresh.setOnLoadMoreListener(layout -> {
|
||||||
@@ -97,22 +100,24 @@ public class WaterPlanFragment extends BaseFragment<WaterPlanFragmentBinding, Wa
|
|||||||
public void getWaterConfigListSuccess(List<WaterPlanWeekEntity> list,int total) {
|
public void getWaterConfigListSuccess(List<WaterPlanWeekEntity> list,int total) {
|
||||||
|
|
||||||
hideDialogLoading();
|
hideDialogLoading();
|
||||||
viewBinding.refresh.finishRefresh(300);
|
List<WaterPlanWeekEntity> pageList = list == null ? new ArrayList<>() : list;
|
||||||
viewBinding.refresh.finishLoadMore(300);
|
|
||||||
if (mCurrentPage == 1) {
|
if (mCurrentPage == 1) {
|
||||||
|
viewBinding.refresh.finishRefresh(300);
|
||||||
mPlanList.clear(); // 只在刷新时清除
|
mPlanList.clear(); // 只在刷新时清除
|
||||||
mPlanList = list;
|
mPlanList = pageList;
|
||||||
} else {
|
} else {
|
||||||
mPlanList.addAll(list);
|
viewBinding.refresh.finishLoadMore(300);
|
||||||
|
mPlanList.addAll(pageList);
|
||||||
}
|
}
|
||||||
mAdapter.setNewData(mPlanList);
|
mAdapter.setNewData(mPlanList);
|
||||||
|
|
||||||
// 4. 判断是否还有更多数据
|
// 4. 判断是否还有更多数据
|
||||||
if (total == mAdapter.getItemCount() || list == null || list.size() == 0) {
|
if (mAdapter.getItemCount() >= total || pageList.size() == 0) {
|
||||||
// ✅ 告诉 SmartRefreshLayout 没有更多数据了
|
// 使用 post 延迟调用,避免内部状态冲突导致的循环调用
|
||||||
viewBinding.refresh.setNoMoreData(true);
|
viewBinding.refresh.postDelayed(() -> viewBinding.refresh.setNoMoreData(true), 300);
|
||||||
viewBinding.relNoMore.setVisibility(View.VISIBLE); // 自定义底部提示“暂无更多数据”
|
viewBinding.relNoMore.setVisibility(View.VISIBLE); // 自定义底部提示"暂无更多数据"
|
||||||
} else {
|
} else {
|
||||||
viewBinding.refresh.setNoMoreData(false); // 重置状态
|
viewBinding.refresh.setNoMoreData(false);
|
||||||
viewBinding.relNoMore.setVisibility(View.GONE);
|
viewBinding.relNoMore.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user