Добавьте отступ слева от переключателя drawable - PullRequest
0 голосов
/ 06 марта 2020

Я пытаюсь добавить отступ слева от переключателя. Но отступ между буквой и текстом фактически добавляется.

Что я получаю: пробел между текстом и текстом
enter image description here

Что я хочу: пробел слева от нарисованного
enter image description here

Мой метод создания переключателя:

private RadioButton createRadioButton(String text) {
    RadioButton btn = new RadioButton(requireContext());

    btn.setId(View.generateViewId());
    btn.setText(text);
    btn.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16);
    btn.setTextColor(answerButtonColor);
    btn.setButtonTintList(answerButtonColor);

    int pxHorizontal = Utils.convertDpToPx(requireContext(), 24);
    int pxVertical = Utils.convertDpToPx(requireContext(), 16);
    btn.setPadding(pxHorizontal, pxVertical, pxHorizontal, pxVertical);

    btn.setLayoutParams(new RadioGroup.LayoutParams(
            ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.WRAP_CONTENT
    ));

    return btn;
}

Есть ли способ добавить отступ слева радиокнопки?

1 Ответ

0 голосов
/ 06 марта 2020

RadioButton является подклассом CompundButton, поэтому мы можем нарисовать на составной кнопке и добавить к ней вставку.

val compoundButtonDrawable = CompoundButtonCompat.getButtonDrawable(radioButton1)
val insetDrawable = InsetDrawable(compoundButtonDrawable, 32, 0, 0, 0)
radioButton1.buttonDrawable = insetDrawable
...