Advertisement
Guest User

Untitled

a guest
Mar 23rd, 2017
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.58 KB | None | 0 0
  1. package com.putuguna.fragmentdinamis;
  2.  
  3. import android.support.v4.view.ViewPager;
  4. import android.support.v7.app.AppCompatActivity;
  5. import android.os.Bundle;
  6. import android.support.v7.widget.LinearLayoutCompat;
  7. import android.widget.LinearLayout;
  8.  
  9. import java.util.ArrayList;
  10. import java.util.List;
  11.  
  12. public class MainActivity extends AppCompatActivity implements ViewPager.OnPageChangeListener {
  13.  
  14. private LinearLayout indicator;
  15. private int mDotCount;
  16. private LinearLayout[] mDots;
  17. private ViewPager viewPager;
  18. private List<String> listItem = new ArrayList<>();
  19. private FragmentAdapter fragmentAdapter;
  20.  
  21. @Override
  22. protected void onCreate(Bundle savedInstanceState) {
  23. super.onCreate(savedInstanceState);
  24. setContentView(R.layout.activity_main);
  25.  
  26. indicator = (LinearLayout) findViewById(R.id.indicators);
  27. viewPager = (ViewPager) findViewById(R.id.viewPager_itemList);
  28.  
  29. setData();
  30. }
  31.  
  32. private void setData(){
  33. listItem.add("Ini adalah fragment 1");
  34. listItem.add("Ini adalah fragment 2");
  35. listItem.add("Ini adalah fragment 3");
  36. listItem.add("Ini adalah fragment 4");
  37. listItem.add("Ini adalah fragment 5");
  38.  
  39. fragmentAdapter = new FragmentAdapter(this, getSupportFragmentManager(), listItem);
  40. viewPager.setAdapter(fragmentAdapter);
  41. viewPager.setCurrentItem(0);
  42. viewPager.setOnPageChangeListener(this);
  43. setUiPageViewController();
  44.  
  45. }
  46.  
  47. private void setUiPageViewController(){
  48. mDotCount = fragmentAdapter.getCount();
  49. mDots = new LinearLayout[mDotCount];
  50.  
  51. for(int i=0; i<mDotCount; i++){
  52. mDots[i] = new LinearLayout(this);
  53. mDots[i].setBackgroundResource(R.drawable.nonselected_item);
  54.  
  55. LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
  56. LinearLayoutCompat.LayoutParams.WRAP_CONTENT,
  57. LinearLayout.LayoutParams.WRAP_CONTENT
  58. );
  59.  
  60. params.setMargins(4,0,4,0);
  61. indicator.addView(mDots[i],params);
  62. mDots[0].setBackgroundResource(R.drawable.selected_item);
  63. }
  64. }
  65.  
  66. @Override
  67. public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
  68.  
  69. }
  70.  
  71. @Override
  72. public void onPageSelected(int position) {
  73. for (int i=0; i<mDotCount; i++){
  74. mDots[i].setBackgroundResource(R.drawable.nonselected_item);
  75. }
  76. mDots[position].setBackgroundResource(R.drawable.selected_item);
  77. }
  78.  
  79. @Override
  80. public void onPageScrollStateChanged(int state) {
  81.  
  82. }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement