RecyclerView分页不起作用

时间:2017-05-23 06:19:53

标签: android pagination android-recyclerview android-scroll

我正在尝试在RecyclerView的最后一项之后向下滚动时加载更多项目,但没有任何反应。它只在屏幕加载时调用一次。在没有任何反应的情况下,虽然我向下滚动&转到最后一项。

以下是我的代码

    inspectionRecyclerView = (RecyclerView) view.findViewById(R.id.recyclerView_Inspections);
            final LinearLayoutManager mLayoutManager = new LinearLayoutManager(getActivity());
            inspectionRecyclerView.setLayoutManager(mLayoutManager);

inspectionRecyclerView.setOnScrollListener(new EndlessRecyclerOnScrollListener(
                mLayoutManager) {
            @Override
            public void onLoadMore(int current_page) {
                // do somthing...

                Log.v("Call", "Load more");
//api call to load more items goes here

            }

        });

滚动零件代码

public abstract class EndlessRecyclerOnScrollListener extends
        RecyclerView.OnScrollListener {
    public String TAG = EndlessRecyclerOnScrollListener.class
            .getSimpleName();

    private int previousTotal = 0;
    private boolean loading = true;
    private int visibleThreshold = 5;
    int firstVisibleItem, visibleItemCount, totalItemCount;

    private int current_page = 1;

    private LinearLayoutManager mLinearLayoutManager;

    public EndlessRecyclerOnScrollListener(
            LinearLayoutManager linearLayoutManager) {
        this.mLinearLayoutManager = linearLayoutManager;
    }

    @Override
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
        super.onScrolled(recyclerView, dx, dy);

        visibleItemCount = recyclerView.getChildCount();
        totalItemCount = mLinearLayoutManager.getItemCount();
        firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();

        if (loading) {
            if (totalItemCount > previousTotal) {
                loading = false;
                previousTotal = totalItemCount;
            }
        }
        if (!loading
                && (totalItemCount - visibleItemCount) <= (firstVisibleItem + visibleThreshold)) {
            // End has been reached

            // Do something
            current_page++;

            onLoadMore(current_page);

            loading = true;
        }
    }

    public abstract void onLoadMore(int current_page);
}

请帮帮我。

4 个答案:

答案 0 :(得分:1)

如果有帮助,请检查一下

1)当我开始此活动时,我将服务器中的数据存储到名为activitiesData的集合中。

2)activitiesData现在拥有我想在RecyclerView中显示的数据。

3)我使用activitiesData填充RecyclerView。

4)现在您需要一个scrollListener来查看代码

recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {

            @Override
            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                super.onScrollStateChanged(recyclerView, newState);
            }

            @Override
            public void onScrolled(final RecyclerView recyclerView, int dx, int dy) {
                super.onScrolled(recyclerView, dx, dy);

                //activitiesData is collection used to populate the recycler Adapter
                activitiesData.remove(activitiesData.size() - 1);
                                recyclerViewAdapter.notifyItemRemoved(activitiesData.size());

               // Make a networking call to get the data on page scrolled

               //after you get response 
               recyclerViewAdapter.notifyDataSetChanged();                 
            }
        });

答案 1 :(得分:0)

我使用以下代码,它对我来说很好。在api调用完成后,不要忘记将加载值设置为FALSE。

 public RecyclerView.OnScrollListener getOnScrollListener() {
        return new RecyclerView.OnScrollListener() {
            @Override
            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {

                if (dy > 0) {
                    visibleItemCount = lm.getChildCount();
                    totalItemCount = lm.getItemCount();
                    pastVisibleItem = lm.findFirstVisibleItemPosition();
                    if (!isLoading) {
                        if ((visibleItemCount + pastVisibleItem) >= totalItemCount) {
                            isLoading = true;
                            loadNextPage();
                        }
                    }
                }
            }
        };
    }

答案 2 :(得分:0)

 private void CallVoiceSearchResultWebservice() {

    final ProgressDialog pDialog = new ProgressDialog(this);
    pDialog.setMessage("Verifying. Please Wait...");
    pDialog.show();

    String URL = "http://idot.co.in//android/voice-search";
    RequestQueue queue = Volley.newRequestQueue(this);
    StringRequest sr = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {
            Log.e("Response", response);
            pDialog.dismiss();

            if (OFFSET == 0) {
                voiceSearchArray.clear();
            }

            loading = true;
            try {
                JSONObject records = new JSONObject(response);

                if (records.getString("status").equals("1")) {
                    JSONArray recordList = records.getJSONArray("recordList");
                    String image_base_url = records.getString("image_base_url");

                    for (int i = 0; i < recordList.length(); i++) {
                        JSONObject recordObj = recordList.getJSONObject(i);
                        ServiceModel serviceModel = new ServiceModel();


                        serviceModel.setPk_id(recordObj.getString("pk_id"));
                        serviceModel.setFullname(recordObj.getString("fullname"));
                        serviceModel.setEmail(recordObj.getString("email"));
                        serviceModel.setMobile(recordObj.getString("mobile"));
                        serviceModel.setBusiness_name(recordObj.getString("business_name"));
                        serviceModel.setAddress(recordObj.getString("address"));
                        serviceModel.setWebsite(recordObj.getString("website"));
                        serviceModel.setRating_cnt(recordObj.getString("rating_cnt"));
                        serviceModel.setPhoneno(recordObj.getString("phoneno"));
                        serviceModel.setPhoto(image_base_url + recordObj.getString("photo"));



                        voiceSearchArray.add(serviceModel);
                    }

                    ServiceAdapter.notifyDataSetChanged();


                } else {

                    Toast.makeText(Home_Activity.this, "No more records Available.", Toast.LENGTH_SHORT).show();
                }


            } catch (JSONException e) {
                e.printStackTrace();
            }


        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Log.e("error", error.toString());
            pDialog.dismiss();


            if (error instanceof TimeoutError || error instanceof NoConnectionError) {
                Toast.makeText(Home_Activity.this, "Sorry, Please Check your Internet Connection.",
                        Toast.LENGTH_LONG).show();
            } else if (error instanceof AuthFailureError) {
                Toast.makeText(Home_Activity.this, "Sorry, AuthFailureError.",
                        Toast.LENGTH_LONG).show();
                //TODO
            } else if (error instanceof ServerError) {
                Toast.makeText(Home_Activity.this, "Sorry, ServerError.",
                        Toast.LENGTH_LONG).show();
                //TODO
            } else if (error instanceof NetworkError) {
                Toast.makeText(Home_Activity.this, "Sorry, NetworkError.",
                        Toast.LENGTH_LONG).show();
                //TODO
            } else if (error instanceof ParseError) {
                //TODO
            }
            //   mPostCommentResponse.requestEndedWithError(error);
        }
    }) {
        @Override
        protected Map<String, String> getParams() {
            Map<String, String> params = new HashMap<String, String>();
            params.put("searchtext", VoiceSearch);
            params.put("limit", "10");
            params.put("offset", String.valueOf(OFFSET));
            //  params.put("utype", "");

            Log.e("searchtext params", "searchtext params " + params.toString());

            return params;
        }

        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            Map<String, String> params = new HashMap<String, String>();
            params.put("Content-Type", "application/x-www-form-urlencoded");
            return params;
        }
    };
    queue.add(sr);
}

在oncreate中编写代码以设置滚动侦听器

text

方法是:

date

答案 3 :(得分:0)

package com.latest.share.chat.fragments;


import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.AttributeSet;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;

import com.latest.share.chat.MyApplication;
import com.latest.share.chat.R;
import com.latest.share.chat.activities.SearchActivity;
import com.latest.share.chat.adapters.PostViewAdapter;
import com.latest.share.chat.adapters.viewholders.Item;
import com.latest.share.chat.adapters.viewholders.MusicViewHolder;
import com.latest.share.chat.models.Footer;
import com.latest.share.chat.models.PostViewModel;
import com.latest.share.chat.utils.Config;
import com.latest.share.chat.utils.UtilMethods;
import com.volokh.danylo.visibility_utils.calculator.DefaultSingleItemCalculatorCallback;
import com.volokh.danylo.visibility_utils.calculator.ListItemsVisibilityCalculator;
import com.volokh.danylo.visibility_utils.calculator.SingleListViewItemActiveCalculator;
import com.volokh.danylo.visibility_utils.scroll_utils.RecyclerViewItemPositionGetter;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.io.IOException;
import java.util.ArrayList;

import okhttp3.MultipartBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;

import static android.app.Activity.RESULT_OK;

/**
 * A simple {@link Fragment} subclass.
 */
public class PostViewFragment extends Fragment {


    private Context mContext;
    private ArrayList<Item> list;
    private ArrayList<Item> list1;
    private ArrayList<Item> final_list;
    private RecyclerView recyclerView;
    private ProgressBar progressBar;

    LinearLayoutManager mLayoutManager;
    ListItemsVisibilityCalculator mVideoVisibilityCalculator;
    private RecyclerViewItemPositionGetter mItemsPositionGetter;
    private int mScrollState = AbsListView.OnScrollListener.SCROLL_STATE_IDLE;
    boolean has_next_page = false;
    int next_page_no = 1;
    PostViewAdapter adapter;
    public static final int POST_COMMENT_REQUEST = 201;
    private String tag_name;
    private String fragment_type;
    private String fragment_extra;
    private LinearLayout linear_search;
    private SwipeRefreshLayout swipeContainer;
    private TextView text_retry;
    private LinearLayout linear_no_internet;
    private TextView text_no_data;
    private String following_id = "";

    public PostViewFragment() {
        // Required empty public constructor
    }


    public static Fragment Instance(String fragment_type, String fragment_extra) {
        PostViewFragment fragment = new PostViewFragment();
        Bundle bundle = new Bundle();
        bundle.putString("fragment_extra", fragment_extra);
        bundle.putString("fragment_type", fragment_type);
        fragment.setArguments(bundle);
        return fragment;
    }

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        fragment_extra = getArguments().getString("fragment_extra");
        fragment_type = getArguments().getString("fragment_type");

        assert fragment_type != null;
        if (fragment_type.equalsIgnoreCase(Config.FRAGEMNT_TYPE_FAMOUS)) {
            tag_name = "get_post_by_famous";
        } else if (fragment_type.equalsIgnoreCase(Config.FRAGMENT_TYPE_FOLLOWERS)) {
            tag_name = "get_posts_by_followers";
        } else if (fragment_type.equalsIgnoreCase(Config.FRAGMENT_TYPE_SELF)) {
            tag_name = "get_post_by_user";
            following_id = fragment_extra;
        } else if (fragment_type.equalsIgnoreCase(Config.FRAGMENT_TYPE_TAG)) {
            tag_name = "get_post_by_tags";
        }


    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment

        View v = inflater.inflate(R.layout.fragment_post_view, container, false);
        mContext = getActivity();
        recyclerView = (RecyclerView) v.findViewById(R.id.recycler_post);
        progressBar = (ProgressBar) v.findViewById(R.id.progressBar);
        linear_search = (LinearLayout) v.findViewById(R.id.linear_search);
        text_retry = (TextView) v.findViewById(R.id.text_retry);
        linear_no_internet = (LinearLayout) v.findViewById(R.id.no_internet);
        text_no_data = (TextView) v.findViewById(R.id.no_data_text);
        if (tag_name.equalsIgnoreCase("get_post_by_famous")) {
            linear_search.setVisibility(View.VISIBLE);
            linear_search.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent i = new Intent(mContext, SearchActivity.class);
                    startActivity(i);
                }
            });
        } else {
            linear_search.setVisibility(View.GONE);
        }

        swipeContainer = (SwipeRefreshLayout) v.findViewById(R.id.swipeContainer);
        swipeContainer.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                new PostTask(String.valueOf(1)).execute(Config.POST_URL);
            }
        });

        final_list = new ArrayList<>();
        new PostTask(String.valueOf(next_page_no)).execute(Config.POST_URL);

        mLayoutManager = new LinearLayoutManager(mContext);
        recyclerView.setLayoutManager(mLayoutManager);
        recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                mScrollState = newState;
                Log.d("scrolling1233_onScrollStateChanged", String.valueOf(newState));
                if (list != null) {
                    if (newState == RecyclerView.SCROLL_STATE_IDLE && !list.isEmpty()) {
                        Log.d("scrolling1233_onScrollStateChanged", "onScrollStateChanged");
                        Log.d("scrolling1233_findFirstVisibleItemPosition",
                                String.valueOf(mLayoutManager.findFirstVisibleItemPosition()));
                        Log.d("scrolling1233_findLastVisibleItemPosition",
                                String.valueOf(mLayoutManager.findLastVisibleItemPosition()));
                    }
                }
            }

            @Override
            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                //super.onScrolled(recyclerView, dx, dy);
                Log.d("scroll123_onScrolled", "onScrolled");
                UtilMethods.LogMethod("scroll123_has_next_page", String.valueOf(has_next_page));
                UtilMethods.LogMethod("scroll123_hasFooter", String.valueOf(hasFooter()));
                if (has_next_page && !(hasFooter())) {
                    LinearLayoutManager manager = (LinearLayoutManager) recyclerView.getLayoutManager();
                    UtilMethods.LogMethod("scroll123_findLastCompletelyVisibleItemPosition",
                            String.valueOf(manager.findLastVisibleItemPosition()));
                    UtilMethods.LogMethod("scroll123_getItemCount",
                            String.valueOf(manager.getItemCount()));
                    if (manager.findLastVisibleItemPosition() == manager.getItemCount() - 2) {
                        UtilMethods.LogMethod("scroll1235_next_page_no",
                                String.valueOf(next_page_no));
                        UtilMethods.LogMethod("scroll1235_has_nextPage",
                                String.valueOf(has_next_page));
                        UtilMethods.LogMethod("scroll123_findLastCompletelyVisibleItemPosition",
                                String.valueOf(manager.findLastVisibleItemPosition()));
                        new PostTask(String.valueOf(next_page_no)).execute(Config.POST_URL);
                    }
                }

            }
        });
        return v;
    }

    @Override
    public void onResume() {
        super.onResume();

        if (adapter != null)
            adapter.notifyDataSetChanged();
    }

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        // super.onActivityResult(requestCode, resultCode, data);
        UtilMethods.LogMethod("kljlkc1234_", "djhjhkhkd");
        if (resultCode == RESULT_OK) {
            if (requestCode == POST_COMMENT_REQUEST) {
                UtilMethods.LogMethod("kljlkc1234_", "djhjhkhkd");
            }
        }
    }

    @SuppressLint("StaticFieldLeak")
    public class PostTask extends AsyncTask<String, Void, Integer> {
        int result = 0;
        boolean jerror;
        String jmsg;
        private String page_no;

        public PostTask(String page_no) {
            this.page_no = page_no;
        }

        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            if (page_no.equalsIgnoreCase("1")) {
                swipeContainer.setRefreshing(true);
            } else {
                list.add(new Footer());
                final_list = list;
                recyclerView.getAdapter().notifyItemInserted(final_list.size());
            }
        }


        @Override
        protected Integer doInBackground(String... params) {
            RequestBody requestBody = null;
            if (tag_name.equalsIgnoreCase("get_post_by_user")) {
                requestBody = new MultipartBody.Builder()
                        .setType(MultipartBody.FORM)
                        .addFormDataPart("tag", "get_post_by_user")
                        .addFormDataPart("self_user_id", Config.SelfId)
                        .addFormDataPart("to_see_user_id", following_id)
                        .addFormDataPart("page_no", page_no)
                        .build();
                UtilMethods.LogMethod("text3434_tag", "get_post_by_user");
                UtilMethods.LogMethod("text3434_self_user_id", Config.SelfId);
                UtilMethods.LogMethod("text3434_to_see_user_id", following_id);

            } else if (tag_name.equalsIgnoreCase("get_posts_by_followers")) {
                requestBody = new MultipartBody.Builder()
                        .setType(MultipartBody.FORM)
                        .addFormDataPart("tag", "get_posts_by_followers")
                        .addFormDataPart("user_id", Config.SelfId)
                        .addFormDataPart("page_no", page_no)
                        .build();
            } else if (tag_name.equalsIgnoreCase("get_post_by_famous")) {
                requestBody = new MultipartBody.Builder()
                        .setType(MultipartBody.FORM)
                        .addFormDataPart("tag", "get_post_by_famous")
                        .addFormDataPart("self_user_id", Config.SelfId)
                        .addFormDataPart("page_no", page_no)
                        .build();

            } else if (tag_name.equalsIgnoreCase("get_post_by_tags")) {
                requestBody = new MultipartBody.Builder()
                        .setType(MultipartBody.FORM)
                        .addFormDataPart("tag", "get_post_by_tags")
                        .addFormDataPart("self_user_id", Config.SelfId)
                        .addFormDataPart("page_no", page_no)
                        .addFormDataPart("post_tag", fragment_extra)
                        .build();
            }


            Request request = new Request.Builder()
                    .url(params[0])
                    .post(requestBody)
                    .build();
            OkHttpClient client = new OkHttpClient();
            try {
                Response response = client.newCall(request).execute();
                int status = response.networkResponse().code();
                UtilMethods.LogMethod("response_status", String.valueOf(status));
                if (status == 200) {
                    String json_string = response.body().string();
                    UtilMethods.LogMethod("response_res", json_string);
                    parseJson(json_string);
                    result = 1;
                } else {
                    result = 0;
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            return result;
        }

        @Override
        protected void onPostExecute(Integer integer) {
            super.onPostExecute(integer);
            if (mContext != null) {
                swipeContainer.setRefreshing(false);
                if (result == 1) {
                    if (!jerror) {
                        if (page_no.equalsIgnoreCase("1")) {
                            recyclerView.setVisibility(View.VISIBLE);
                            linear_no_internet.setVisibility(View.GONE);
                            text_no_data.setVisibility(View.GONE);
                            final_list = list;
                            adapter = new PostViewAdapter(mContext, final_list, following_id);
//                            recyclerView.getItemAnimator().setChangeDuration(0);
                            recyclerView.setAdapter(adapter);

                            if (list != null) {
                                if (!list.isEmpty()) {
                                    // need to call this method from list view handler in order to have filled list
                                    if (recyclerView != null) {
//                                        recyclerView.post(new Runnable() {
//                                            @Override
//                                            public void run() {
//                                                if (mContext != null) {
//                                                    mVideoVisibilityCalculator.onScrollStateIdle(
//                                                            mItemsPositionGetter,
//                                                            mLayoutManager.findFirstVisibleItemPosition(),
//                                                            mLayoutManager.findLastVisibleItemPosition());
//                                                }
//
//                                            }
//                                        });
                                    }
                                } else {
                                    text_no_data.setVisibility(View.VISIBLE);
                                    recyclerView.setVisibility(View.GONE);
                                    linear_no_internet.setVisibility(View.GONE);
                                    if (tag_name.equalsIgnoreCase("get_post_by_user")) {
                                        text_no_data.setText("No Post Found.");
                                    } else if (tag_name.equalsIgnoreCase("get_posts_by_followers")) {
                                        text_no_data.setText("No Post Found.\n Follow more user to watch more media.");
                                    } else if (tag_name.equalsIgnoreCase("get_post_by_famous")) {
                                        text_no_data.setText("No Post Found.");
                                    } else if (tag_name.equalsIgnoreCase("get_post_by_tags")) {
                                        text_no_data.setText("No Post Found.");
                                    }
                                }
                            }
                        } else {
                            int size = list.size();
                            list.remove(size - 1);
                            list.addAll(list1);
                            final_list = list;
//                            recyclerView.getAdapter().notifyItemRangeChanged(size - 1,
//                                    list.size() - size);
                            recyclerView.getAdapter().notifyDataSetChanged();
                        }

                    } else {
                        Toast.makeText(mContext, jmsg, Toast.LENGTH_LONG).show();
                    }
                } else {
                    if (page_no.equalsIgnoreCase("1")) {
                        recyclerView.setVisibility(View.GONE);
                        linear_no_internet.setVisibility(View.VISIBLE);
                        text_no_data.setVisibility(View.GONE);
                        text_retry.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                linear_no_internet.setVisibility(View.GONE);

                                new PostTask(String.valueOf(1)).execute(Config.POST_URL);
                            }
                        });
                    } else {
                        Toast.makeText(mContext, "No internet connection", Toast.LENGTH_LONG).show();
                    }
                }
            }
        }

        public void parseJson(String s) {
            if (page_no.equalsIgnoreCase("1")) {
                list = new ArrayList<>();
            } else {
                list1 = new ArrayList<>();
            }
            try {
                JSONObject startingObject = new JSONObject(s);
                jerror = startingObject.getBoolean("error");
                if (!jerror) {
                    page_no = startingObject.getString("page_number");
                    has_next_page = startingObject.getBoolean("has_next_page");
                    if (has_next_page)
                        next_page_no = startingObject.getInt("next_page_no");
                    JSONArray allDataArray = startingObject.getJSONArray("all_data");
                    if (allDataArray.length() > 0) {
                        for (int i = 0; i < allDataArray.length(); i++) {
                            PostViewModel model = new PostViewModel();
                            JSONObject object = allDataArray.getJSONObject(i);
                            JSONObject userObject = object.getJSONObject("user_data");
                            model.setUser_id(userObject.getString("user_id"));
                            model.setUser_name(userObject.getString("user_name"));
                            model.setUser_gcm_id(userObject.getString("user_gcm_id"));
                            model.setProfile_pic(userObject.getString("profile_pic"));
                            model.setTotal_posts(userObject.getString("total_posts"));
                            model.setTotal_followers(userObject.getString("total_followers"));
                            model.setTotal_followings(userObject.getString("total_followings"));
                            model.setStatus(userObject.getString("status"));
                            Object a = userObject.get("following");
                            if (a instanceof String) {
                                model.setFollowing_type("Str");
                                model.setFollowing_string(userObject.getString("following"));
                                model.setFollowing(Boolean.parseBoolean(model.getFollowing_string()));
                            } else {
                                model.setFollowing_type("Bool");
                                model.setFollowing(userObject.getBoolean("following"));
                                model.setFollowing_string(String.valueOf(userObject.getBoolean("following")));
                            }
//                            model.setFollowing(userObject.getBoolean("following"));
                            model.setPoster_pic(userObject.getString("poster_pic"));
                            model.setShow_profile(userObject.getBoolean("show_profile"));
                            model.setBirth_date(userObject.getString("birth_date"));
                            model.setMobile_number(userObject.getString("mobile_number"));
                            model.setPrivacy_policy(userObject.getString("privacy_policy"));
                            model.setBlockedUser(userObject.getBoolean("is_blocked"));
                            JSONObject postObject = object.getJSONObject("post_data");
                            model.setPost_id(postObject.getString("post_id"));
                            model.setPost_message(postObject.getString("post_message"));
                            model.setPost_type(postObject.getString("post_type"));
                            model.setPost_path(postObject.getString("post_path"));
                            model.setPost_thumbnail(postObject.getString("post_thumbnail"));
                            model.setPost_tag(postObject.getString("post_tag"));
                            model.setCreated_at(postObject.getString("created_at"));
                            model.setTotal_likes(postObject.getString("total_likes"));
                            model.setTotal_comments(postObject.getString("total_comments"));
                            model.setPost_back_color_code(postObject.getString("post_back_color_code"));
                            model.setPost_back_image_id(postObject.getString("post_back_image_id"));
                            model.setIsSharingOn(postObject.getString("isSharingOn"));
                            model.setIsCommentsOn(postObject.getString("isCommentsOn"));
                            model.setPost_width(postObject.getString("post_width"));
                            model.setPost_height(postObject.getString("post_height"));
                            model.setIs_liked(postObject.getBoolean("is_liked"));
                            model.setLanguage(postObject.getString("post_language"));
                            model.setIs_notification_on(postObject.getBoolean("is_notification_on"));
                            if (model.getPost_tag().contains("18")) {
                                UtilMethods.LogMethod("post738239_18888", "ifff");
                                if (MyApplication.getInstance().
                                        getPrefManager().getEighteenPlus()) {
                                    if (page_no.equalsIgnoreCase("1")) {
                                        list.add(model);
                                    } else {
                                        list1.add(model);
                                    }
                                }
                            } else {
                                if (page_no.equalsIgnoreCase("1")) {
                                    list.add(model);
                                } else {
                                    list1.add(model);
                                }
                            }


                        }
                    } else {

                    }


                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
    }

    @Override
    public void onPause() {
        super.onPause();
        UtilMethods.LogMethod("recyclerView1234_music123", "pause");
        if (MusicViewHolder.mp != null)
            MusicViewHolder.mp.pause();
        // UtilMethods.stopMediaPlayer();
    }

    @Override
    public void onDetach() {
        super.onDetach();
        UtilMethods.LogMethod("recyclerView1234_onDetach", "onDetach");
    }

    private boolean hasFooter() {
        if (list.size() > 0) {
            return list.get(list.size() - 1) instanceof Footer;
        } else {
            return true;
        }
    }


}