You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

DefaultPaginationView.java 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package com.luticate.utils.ui.views;
  2. import android.content.Context;
  3. import android.util.AttributeSet;
  4. import android.view.View;
  5. import android.view.ViewGroup;
  6. import android.widget.TextView;
  7. import com.luticate.utils.R;
  8. /**
  9. * Created by robin on 12/8/15.
  10. */
  11. public class DefaultPaginationView extends AbstractPaginationView {
  12. public DefaultPaginationView(Context context) {
  13. super(context);
  14. init();
  15. }
  16. public DefaultPaginationView(Context context, AttributeSet attrs) {
  17. super(context, attrs);
  18. init();
  19. }
  20. public DefaultPaginationView(Context context, AttributeSet attrs, int defStyleAttr) {
  21. super(context, attrs, defStyleAttr);
  22. init();
  23. }
  24. public void init()
  25. {
  26. inflate(getContext(), R.layout.default_pagination_view_layout, this);
  27. findViewById(R.id.previousPageView).setOnClickListener(new OnClickListener() {
  28. @Override
  29. public void onClick(View v) {
  30. loadPreviousPage();
  31. }
  32. });
  33. findViewById(R.id.nextPageView).setOnClickListener(new OnClickListener() {
  34. @Override
  35. public void onClick(View v) {
  36. loadNextPage();
  37. }
  38. });
  39. }
  40. @Override
  41. protected void onUpdatePages() {
  42. ViewGroup layout = (ViewGroup) findViewById(R.id.pagesLayout);
  43. layout.removeAllViews();
  44. for (final int page : getPages())
  45. {
  46. TextView tv = new TextView(getContext());
  47. tv.setText(" " + String.valueOf(page + 1) + " ");
  48. tv.setOnClickListener(new View.OnClickListener() {
  49. @Override
  50. public void onClick(View v) {
  51. loadPage(page);
  52. }
  53. });
  54. tv.setTextAppearance(getContext(), android.R.style.TextAppearance_DeviceDefault_Large);
  55. layout.addView(tv);
  56. }
  57. }
  58. }