public void setTitlePaddingDp(int titlePaddingDp) { this.titlePadding = RxBannerUtil.dp2px(titlePaddingDp); }
public void setTitleMarginBottomDp(int titleMarginBottomDp) { this.titleMarginBottom = RxBannerUtil.dp2px(titleMarginBottomDp); }
public void setTitleMarginStartDp(int titleMarginStartDp) { this.titleMarginStart = RxBannerUtil.dp2px(titleMarginStartDp); }
public void setTitleWidthDp(int titleWidthDp) { this.titleWidth = titleWidthDp > 0 ? RxBannerUtil.dp2px(titleWidthDp) : titleWidthDp; }
public void setTitleMarginTopDp(int titleMarginTopDp) { this.titleMarginTop = RxBannerUtil.dp2px(titleMarginTopDp); }
public void setTitleMarginEndDp(int titleMarginEndDp) { this.titleMarginEnd = RxBannerUtil.dp2px(titleMarginEndDp); }
public void setTitlePaddingBottomDp(int titlePaddingBottomDp) { this.titlePaddingBottom = RxBannerUtil.dp2px(titlePaddingBottomDp); }
public void setTitlePaddingEndDp(int titlePaddingEndDp) { this.titlePaddingEnd = RxBannerUtil.dp2px(titlePaddingEndDp); }
public void setTitlePaddingTopDp(int titlePaddingTopDp) { this.titlePaddingTop = RxBannerUtil.dp2px(titlePaddingTopDp); }
public void setTitleHeightDp(int titleHeightDp) { this.titleHeight = titleHeightDp > 0 ? RxBannerUtil.dp2px(titleHeightDp) : titleHeightDp; }
public void setItemSpaceDp(int itemSpaceDp) { this.itemSpace = RxBannerUtil.dp2px(itemSpaceDp); }
public void setTitleMarginDp(int titleMarginDp) { this.titleMargin = RxBannerUtil.dp2px(titleMarginDp); }
public void setTitlePaddingStartDp(int titlePaddingStartDp) { this.titlePaddingStart = RxBannerUtil.dp2px(titlePaddingStartDp); }
/** * Set padding in dp between each circle indicator. Default value is {@link IndicatorConfig#DEFAULT_PADDING_DP}. * * @param paddingDp padding between circles in dp. */ public void setPadding(int paddingDp) { if (paddingDp < 0) { paddingDp = 0; } int paddingPx = RxBannerUtil.dp2px(paddingDp); manager.indicator().setPadding(paddingPx); invalidate(); }
private void initSizeAttribute(@NonNull TypedArray typedArray) { int orientationIndex = typedArray.getInt(R.styleable.RxBanner_rb_indicator_orientation, Orientation.HORIZONTAL.ordinal()); Orientation orientation; if (orientationIndex == 0) { orientation = Orientation.HORIZONTAL; } else { orientation = Orientation.VERTICAL; } int radius = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_radius, RxBannerUtil.dp2px(IndicatorConfig.DEFAULT_RADIUS_DP)); if (radius < 0) { radius = 0; } float scaleFactor = typedArray.getFloat(R.styleable.RxBanner_rb_indicator_scale, ScaleAnimation.DEFAULT_SCALE_FACTOR); if (scaleFactor < ScaleAnimation.MIN_SCALE_FACTOR) { scaleFactor = ScaleAnimation.MIN_SCALE_FACTOR; } else if (scaleFactor > ScaleAnimation.MAX_SCALE_FACTOR) { scaleFactor = ScaleAnimation.MAX_SCALE_FACTOR; } int stroke = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_stroke_width, RxBannerUtil.dp2px(FillAnimation.DEFAULT_STROKE_DP)); if (stroke > radius) { stroke = radius; } if (indicatorConfig.getAnimationType() != AnimationType.FILL) { stroke = 0; } indicatorConfig.setRadius(radius); indicatorConfig.setOrientation(orientation); indicatorConfig.setScale(scaleFactor); indicatorConfig.setStroke(stroke); }
/** * Set radius in dp of each circle indicator. Default value is {@link IndicatorConfig#DEFAULT_RADIUS_DP}. * Note: make sure you set circle Radius, not a Diameter. * * @param radiusDp radius of circle in dp. */ public void setRadius(int radiusDp) { if (radiusDp < 0) { radiusDp = 0; } int radiusPx = RxBannerUtil.dp2px(radiusDp); manager.indicator().setRadius(radiusPx); invalidate(); }
int rb_indicator_layout_gravity = typedArray.getInt(R.styleable.RxBanner_rb_indicator_layout_gravity, Gravity.BOTTOM | Gravity.END); indicatorConfig.setGravity(rb_indicator_layout_gravity); int margin = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_margin, RxBannerUtil.dp2px(IndicatorConfig.DEFAULT_MARGIN_DP)); int marginTop = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_marginTop, 0); int marginBottom = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_marginBottom, 0); indicatorConfig.setMarginEnd(marginEnd); int padding = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_padding, RxBannerUtil.dp2px(IndicatorConfig.DEFAULT_PADDING_DP)); int paddingTop = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_paddingTop, 0); int paddingBottom = typedArray.getDimensionPixelSize(R.styleable.RxBanner_rb_indicator_paddingBottom, 0);
/** * Set stroke width in dp to set while {@link AnimationType#FILL} is selected. * Default value is {@link FillAnimation#DEFAULT_STROKE_DP} * * @param strokeDp stroke width in dp. */ public void setStrokeWidth(int strokeDp) { int strokePx = RxBannerUtil.dp2px(strokeDp); int radiusPx = manager.indicator().getRadius(); if (strokePx < 0) { strokePx = 0; } else if (strokePx > radiusPx) { strokePx = radiusPx; } manager.indicator().setStroke(strokePx); invalidate(); }
@Override public void onClick(View view) { Intent custom = new Intent(getApplicationContext(), DemoActivity.class); DemoConfig config = new DemoConfig(); config.setOrientation(LinearLayout.VERTICAL); config.setItemPercent(80); config.setItemScale(0.8f); config.setTitleVisible(false); config.getIndicatorConfig().setAnimationType(AnimationType.CUSTOM); config.getIndicatorConfig().setIndicatorSelectedBackgroundResId(R.drawable.ic_demo_indicator_custom_selected); config.getIndicatorConfig().setIndicatorUnselectedBackgroundResId(R.drawable.ic_demo_indicator_custom_unselected); config.getIndicatorConfig().setRadius(RxBannerUtil.dp2px(20)); config.getIndicatorConfig().setPadding(RxBannerUtil.dp2px(0)); custom.putExtra(Sys.BANNER_DATA, config); startActivity(custom); } });
@Override public void onClick(View v) { DemoConfig config = new DemoConfig(); config.setItemPercent(80); config.setItemSpaceDp(-20); config.setSideAlpha(0.8f); config.setItemScale(0.8f); config.getIndicatorConfig().setAnimationType(AnimationType.CUSTOM); config.getIndicatorConfig().setAnimatorResId(R.animator.demo_banner_scale_with_alpha); config.getIndicatorConfig().setAnimatorReverseResId(R.animator.demo_banner_scale_with_alpha); config.getIndicatorConfig().setIndicatorSelectedBackgroundResId(R.drawable.demo_banner_indicator_selected); config.getIndicatorConfig().setIndicatorUnselectedBackgroundResId(R.drawable.demo_banner_indicator_unselected); config.getIndicatorConfig().setRadius(RxBannerUtil.dp2px(16)); config.getIndicatorConfig().setPadding(RxBannerUtil.dp2px(0)); Intent demo = new Intent(getApplicationContext(), DemoActivity.class); demo.putExtra(Sys.BANNER_DATA, config); startActivity(demo); } });