in app/src/main/java/com/google/reviewit/widget/SelectCodeReviewView.java [262:316]
public VotingButton(
Context context, Background.Corner corner, @DrawableRes int iconRes,
@DrawableRes int iconResSelected, @ColorRes int color,
@ColorRes int colorSelected, int vote) {
super(context);
LinearLayout.LayoutParams params =
new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT, widgetUtil.dpToPx(100));
params.weight = 1;
setLayoutParams(params);
this.corner = corner;
this.background = new Background(widgetUtil.color(color), corner);
this.backgroundSelected = new Background(
widgetUtil.color(colorSelected), corner);
this.backgroundDisabled = new Background(
widgetUtil.color(R.color.disabled), corner);
this.colorSelected = colorSelected;
this.iconResSelected = iconResSelected;
this.vote = vote;
WidgetUtil.setBackground(this, background);
ImageView icon = new ImageView(context);
icon.setImageDrawable(widgetUtil.getDrawable(iconRes));
LinearLayout.LayoutParams iconParams =
new LinearLayout.LayoutParams(
widgetUtil.dpToPx(60), widgetUtil.dpToPx(60));
switch (corner) {
case LEFT_TOP:
iconParams.topMargin = widgetUtil.dpToPx(8);
iconParams.leftMargin = widgetUtil.dpToPx(8);
break;
case LEFT_BOTTOM:
iconParams.bottomMargin = widgetUtil.dpToPx(8);
iconParams.leftMargin = widgetUtil.dpToPx(8);
iconParams.gravity = Gravity.BOTTOM;
break;
case RIGHT_TOP:
iconParams.topMargin = widgetUtil.dpToPx(8);
iconParams.rightMargin = widgetUtil.dpToPx(8);
setGravity(Gravity.END);
break;
case RIGHT_BOTTOM:
iconParams.bottomMargin = widgetUtil.dpToPx(8);
iconParams.rightMargin = widgetUtil.dpToPx(8);
iconParams.gravity = Gravity.BOTTOM;
setGravity(Gravity.END);
break;
default:
break;
}
icon.setLayoutParams(iconParams);
addView(icon);
}