如何在android中获取paing列表中的排序时间戳

如何在android中获取paing列表中的排序时间戳,android,list,pagination,timestamp,retrofit,Android,List,Pagination,Timestamp,Retrofit,我想显示排序后的时间戳列表 以下是步骤 添加帖子:标题是“9/15” 检查页面列表(下图) 三,。我看不到最后的帖子(9/15的帖子) 我检查我的改装和邮递员,它工作良好(我可以看到所有数据9/15和其他3个数据。) 我找不到分页列表没有显示最后一个的原因。 这是代码 public class PostDataSource extends PageKeyedDataSource<Integer, Posts> { private static final int

我想显示排序后的时间戳列表

以下是步骤

  • 添加帖子:标题是“9/15”
  • 检查页面列表(下图)
  • 三,。我看不到最后的帖子(9/15的帖子)

    我检查我的改装和邮递员,它工作良好(我可以看到所有数据9/15和其他3个数据。)

    我找不到分页列表没有显示最后一个的原因。 这是代码

    public class PostDataSource extends PageKeyedDataSource<Integer, Posts> {      
        private static final int PAGE_SIZE = 10;
        private static final int FIRST_PAGE = 1;        
        public ArrayList<Product> postsList = new ArrayList<>();
        private long currentTimeStamp;
     ...
       
        private Long getTimeStamp() {
            Date currentTime = Calendar.getInstance().getTime();
            long timestamp = currentTime.getTime() / 1000L;
            return timestamp;
        }
    
    
        @Override
        public void loadInitial(@NonNull LoadInitialParams<Integer> params, @NonNull LoadInitialCallback<Integer, Posts> callback) {
            userToken = getTokenResult();
            RetrofitInterface retrofitInterface = RetrofitClient.getRestMethods();
            currentTimeStamp = getTimeStamp();           
            Call<PostsResponse> postsResponseCall =
                    retrofitInterface.searchProduct(SORT_TYPE,FIRST_PAGE,currentTimeStamp,PAGE_SIZE);
            postsResponseCall.enqueue(new Callback<PostsResponse>() {
                @Override
                public void onResponse(Call<PostsResponse> call, Response<PostsResponse> response) {
                    try {
                        PostsResponse postsResponse = response.body();
                        if (response.isSuccessful()) {
                            List<Posts> responseItems = postsResponse.getResultData();
                            callback.onResult(responseItems, null, FIRST_PAGE + 1);
    
                        } 
               ...
    
            });
        }       
    
    
        private Integer afterPageKey(LoadParams<Integer> params) {
            Integer key;    
            if (params.key > 1) {
                key = params.key + 1;
            } else {
                key = 0;
            }
    
            return key;
        }
    
    
        @Override
        public void loadAfter(@NonNull LoadParams<Integer> params, @NonNull LoadCallback<Integer, Posts> callback) {
            userToken = getTokenResult();
            RetrofitInterface retrofitInterface = RetrofitClient.getRestMethods();
            Call<PostsResponse> postsResponseCall =
                    retrofitInterface.searchProduct(SORT_TYPE, params.key,currentTimeStamp,PAGE_SIZE);
            postsResponseCall.enqueue(new Callback<PostsResponse>() {
                @Override
                public void onResponse(Call<PostsResponse> call, Response<PostsResponse> response) {
                    try {
                        PostsResponse postsResponse = response.body();
                        if (response.isSuccessful()) {        
                             List<Posts> responseItems = postsResponse.getResultData();
                            Integer key = afterPageKey(params);
                            Log.e("2 current page :"," "+key);
                            callback.onResult(responseItems, params.key +1);
    
                        }
                      ...
            });
        }   
    }
    
    公共类PostDataSource扩展了PageKeyedDataSource{
    专用静态最终整版页面大小=10;
    专用静态最终int第一页=1;
    public ArrayList postsList=new ArrayList();
    私有长时间戳;
    ...
    私有长getTimeStamp(){
    Date currentTime=Calendar.getInstance().getTime();
    长时间戳=currentTime.getTime()/1000L;
    返回时间戳;
    }
    @凌驾
    public void loadInitial(@NonNull LoadInitialParams params,@NonNull LoadInitialCallback callback){
    userToken=getTokenResult();
    RefughtInterface-RefughtInterface=RefughtClient.getRestMethods();
    currentTimeStamp=getTimeStamp();
    呼叫postsResponseCall=
    searchProduct(排序类型、第一页、当前时间戳、页面大小);
    postsResponseCall.enqueue(新回调(){
    @凌驾
    公共void onResponse(调用、响应){
    试一试{
    PostsResponse PostsResponse=response.body();
    if(response.issusccessful()){
    List responseItems=postsResponse.getResultData();
    onResult(responseItems,null,第一页+1);
    } 
    ...
    });
    }       
    私有整数afterPageKey(LoadParams-params){
    整数键;
    如果(参数键>1){
    key=params.key+1;
    }否则{
    键=0;
    }
    返回键;
    }
    @凌驾
    public void loadAfter(@NonNull LoadParams params,@NonNull LoadCallback callback){
    userToken=getTokenResult();
    RefughtInterface-RefughtInterface=RefughtClient.getRestMethods();
    呼叫postsResponseCall=
    搜索产品(排序类型、参数键、当前时间戳、页面大小);
    postsResponseCall.enqueue(新回调(){
    @凌驾
    公共void onResponse(调用、响应){
    试一试{
    PostsResponse PostsResponse=response.body();
    if(response.issusccessful()){
    List responseItems=postsResponse.getResultData();
    整数键=后页键(参数);
    Log.e(“2当前页面:”,“+键);
    onResult(responseItems,params.key+1);
    }
    ...
    });
    }   
    }
    
    public class PostDataSource extends PageKeyedDataSource<Integer, Posts> {      
        private static final int PAGE_SIZE = 10;
        private static final int FIRST_PAGE = 1;        
        public ArrayList<Product> postsList = new ArrayList<>();
        private long currentTimeStamp;
     ...
       
        private Long getTimeStamp() {
            Date currentTime = Calendar.getInstance().getTime();
            long timestamp = currentTime.getTime() / 1000L;
            return timestamp;
        }
    
    
        @Override
        public void loadInitial(@NonNull LoadInitialParams<Integer> params, @NonNull LoadInitialCallback<Integer, Posts> callback) {
            userToken = getTokenResult();
            RetrofitInterface retrofitInterface = RetrofitClient.getRestMethods();
            currentTimeStamp = getTimeStamp();           
            Call<PostsResponse> postsResponseCall =
                    retrofitInterface.searchProduct(SORT_TYPE,FIRST_PAGE,currentTimeStamp,PAGE_SIZE);
            postsResponseCall.enqueue(new Callback<PostsResponse>() {
                @Override
                public void onResponse(Call<PostsResponse> call, Response<PostsResponse> response) {
                    try {
                        PostsResponse postsResponse = response.body();
                        if (response.isSuccessful()) {
                            List<Posts> responseItems = postsResponse.getResultData();
                            callback.onResult(responseItems, null, FIRST_PAGE + 1);
    
                        } 
               ...
    
            });
        }       
    
    
        private Integer afterPageKey(LoadParams<Integer> params) {
            Integer key;    
            if (params.key > 1) {
                key = params.key + 1;
            } else {
                key = 0;
            }
    
            return key;
        }
    
    
        @Override
        public void loadAfter(@NonNull LoadParams<Integer> params, @NonNull LoadCallback<Integer, Posts> callback) {
            userToken = getTokenResult();
            RetrofitInterface retrofitInterface = RetrofitClient.getRestMethods();
            Call<PostsResponse> postsResponseCall =
                    retrofitInterface.searchProduct(SORT_TYPE, params.key,currentTimeStamp,PAGE_SIZE);
            postsResponseCall.enqueue(new Callback<PostsResponse>() {
                @Override
                public void onResponse(Call<PostsResponse> call, Response<PostsResponse> response) {
                    try {
                        PostsResponse postsResponse = response.body();
                        if (response.isSuccessful()) {        
                             List<Posts> responseItems = postsResponse.getResultData();
                            Integer key = afterPageKey(params);
                            Log.e("2 current page :"," "+key);
                            callback.onResult(responseItems, params.key +1);
    
                        }
                      ...
            });
        }   
    }