Пример #1
0
  private void initViews() {
    arrViews = new ArrayList<View>();
    baseView = new FrameLayout(context);
    mViewPager = new ViewPager(context);
    llDots = new LinearLayout(context);
    llDots.setOrientation(RadioGroup.HORIZONTAL);

    llDots.setGravity(Gravity.CENTER_HORIZONTAL);
    LinearLayout.LayoutParams paramsGroup =
        new LinearLayout.LayoutParams(
            LinearLayout.LayoutParams.WRAP_CONTENT, (int) (20 * fDensity));
    paramsGroup.gravity = Gravity.CENTER_HORIZONTAL;
    llDots.setLayoutParams(paramsGroup);
    if (resIds == null) return;
    for (int i = 0; i < resIds.length; i++) {
      ImageView iv = new ImageView(context);
      iv.setId(i);
      iv.setTag(i);
      iv.setOnClickListener(mClick);
      iv.setOnTouchListener(onTouch);
      iv.setBackgroundResource(resIds[i]);
      arrViews.add(iv);
      RelativeLayout rl = new RelativeLayout(context);
      android.widget.RelativeLayout.LayoutParams layoutParam =
          new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
      layoutParam.addRule(RelativeLayout.CENTER_VERTICAL);
      ImageView dot = new ImageView(context);
      dot.setId(i);

      if (i == 0) {
        dot.setImageResource(dotResId1);
      } else {
        dot.setImageResource(dotResId2);
      }
      rl.addView(dot, layoutParam);
      rl.setPadding(0, 0, (int) (13 * fDensity), 0);
      llDots.addView(rl);
    }
    LinearLayout.LayoutParams params =
        new LinearLayout.LayoutParams(
            LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT);
    baseView.addView(mViewPager, params);

    pageItemAdapter = new PageItemAdapter(arrViews);
    mViewPager.setAdapter(pageItemAdapter);
    mViewPager.setOnPageChangeListener(mPageChange);

    LayoutParams params2 =
        new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, (int) (20 * fDensity));
    params2.gravity = Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL;
    params2.bottomMargin = (int) (10 * fDensity);
    baseView.addView(llDots, params2);
    initPage();
    addContentView();
  }