Удаление прокладки из кнопки переключения в Android

Я создаю простую кнопку переключения в андроиде и устанавливаю фон как выталкиваемый.

<ToggleButton android:layout_width="wrap_content" android:drawablePadding="0dp" android:layout_height="wrap_content" android:text="" android:textSize="12sp" android:padding="0dp" android:id="@+id/tag_text" android:background="@drawable/toggle_selector"/> 

Toggle_selector.xml выглядит так:

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/toggle_button_off" android:state_checked="false"/> <item android:drawable="@drawable/toggle_button_on" android:state_checked="true"/> </selector> 

Toggle_button_off и toggle_button_on имеют простую форму, пригодную для рисования с некоторым цветом.

И вот как я надуваю эту кнопку переключения на свое мнение:

 View child = getLayoutInflater().inflate(R.layout.tags, null); ToggleButton tag = ((ToggleButton)child.findViewById(R.id.tag_text)); tag.setText("Testing"); tag.setTextOff("Testing"); tag.setTextOn("Testing"); flowlayout.addView(child); 

Проблема в том, что в кнопке переключения есть слишком много дополнений, и я не могу избавиться от нее, установив padding = "0dp" . Текст на этих кнопках динамически добавляется, поэтому установка постоянной высоты не помогает.

Введите описание изображения здесь

Solutions Collecting From Web of "Удаление прокладки из кнопки переключения в Android"

Я получил решение, установив minWidth, minHeight – 0dp. Обтекание содержимого по ширине и высоте. И затем добавление пользовательского дополнения к togglebutton, который я хочу.

 <ToggleButton android:layout_width="wrap_content" android:minWidth="0dp" android:minHeight="0dp" android:layout_height="wrap_content" android:text="" android:textSize="12sp" android:padding="2dp" android:id="@+id/tag_text" android:background="@drawable/toggle_selector"/> 

Вместо этого используйте CheckedTextView:

  final CheckedTextView toggle = new CheckedTextView(clipboardWordsLayout.getContext()); toggle.setText(kanji); final int min = Views.dp2px(48, clipboardWordsLayout.getContext()); toggle.setMinimumWidth(min); toggle.setMinimumHeight(min); toggle.setGravity(Gravity.CENTER); toggle.setBackgroundResource(R.drawable.togglebutton); toggle.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { toggle.setChecked(!toggle.isChecked()); } });