Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class NewFragment extends Fragment implements Callback<List<ModelsCinema>>,OnClickListener
- {
- private LinearLayout layout;
- private Button back,next;
- private RecyclerView rv;
- private ProgressBar loading;
- private DateAdapter adapter;
- private int position;
- private int pageCounter=2;
- @Override
- public void onConfigurationChanged(Configuration newConfig)
- {
- super.onConfigurationChanged(newConfig);
- setGriadLayoutManadger(newConfig.orientation);
- }
- @Override
- public void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- position = getArguments().getInt("position", 0);
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
- {
- return inflater.inflate(R.layout.fragments, container, false);
- }
- @Override
- public void onViewCreated(View view, Bundle savedInstanceState)
- {
- super.onViewCreated(view, savedInstanceState);
- layout = (LinearLayout) view.findViewById(R.id.layout);
- back = (Button) view.findViewById(R.id.black);
- next = (Button) view.findViewById(R.id.next);
- rv = (RecyclerView) view.findViewById(R.id.rv);
- loading = (ProgressBar) view.findViewById(R.id.loading);
- loading.animate().alpha(1).setDuration(300).start();
- int orientation=getActivity().getResources().getConfiguration().orientation;
- setGriadLayoutManadger(orientation);
- Loader.load(Links.navigation_urls[position], 0, this);
- }
- @Override
- public void onResponse(final List<ModelsCinema> response)
- {
- adapter = new DateAdapter(getActivity(), response, getActivity());
- rv.setAdapter(adapter);
- loading.setVisibility(View.GONE);
- rv.addOnScrollListener(new RecyclerView.OnScrollListener() {
- @Override
- public void onScrolled(RecyclerView recyclerView, int dx, int dy)
- {
- super.onScrolled(recyclerView, dx, dy);
- final GridLayoutManager layoutManager = (GridLayoutManager) recyclerView.getLayoutManager();
- final int firstVisibleItemPosition = layoutManager.findFirstVisibleItemPosition();
- if (layoutManager.getChildCount() + firstVisibleItemPosition >= layoutManager.getItemCount())
- {
- if (pageCounter == 2)
- {
- back.setVisibility(View.GONE);
- }
- else
- {
- back.setVisibility(View.VISIBLE);
- }
- layout.setVisibility(View.VISIBLE);
- next.setOnClickListener(NewFragment.this);
- back.setOnClickListener(NewFragment.this);
- }
- else
- {
- layout.setVisibility(View.GONE);
- }
- }
- });
- }
- @Override
- public void onError()
- {
- // TODO: Implement this method
- }
- @Override
- public void onClick(View p1)
- {
- loading.setVisibility(View.VISIBLE);
- rv.setVisibility(View.GONE);
- switch (p1.getId())
- {
- case R.id.black:
- pageCounter--;
- break;
- case R.id.next:
- pageCounter++;
- break;
- }
- Loader.load(Links.navigation_urls[position], pageCounter, new Callback<List<ModelsCinema>>(){
- @Override
- public void onResponse(List<ModelsCinema> response)
- {
- adapter = new DateAdapter(getActivity(), response, getActivity());
- rv.setAdapter(adapter);
- loading.setVisibility(View.GONE);
- rv.setVisibility(View.VISIBLE);
- }
- @Override
- public void onError()
- {
- // TODO: Implement this method
- }
- }
- );
- }
- private void setGriadLayoutManadger(int orientation)
- {
- int columnCount=orientation == Configuration.ORIENTATION_PORTRAIT ? 1 : 2;
- GridLayoutManager manadger=new GridLayoutManager(getActivity(), columnCount);
- rv.setLayoutManager(manadger);
- }
- public static NewFragment newInstance(int position)
- {
- NewFragment fragment=new NewFragment();
- Bundle args=new Bundle();
- args.putInt("position", position);
- fragment.setArguments(args);
- return fragment;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement