2017-02-16 47 views
0

Мои кнопки в конечном итоге выглядит так: like thisXamarin.Android - Почему у моих горизонтальных кнопок нет пробелов между ними?

Это 4 кнопки-переключатели (хорошо, 3 с половиной), выбран второй. Я устанавливаю заполнение в drawable, но по какой-то причине отступы либо игнорируются, либо используются на границе кнопки для текста. Если я не использую drawable, кнопки Android по умолчанию выглядят прекрасно, без пробелов между ними.

Пример моего макета:

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:orientation="horizontal" 
    android:minWidth="25px" 
    android:minHeight="25px"> 
    <ToggleButton 
     android:text="@string/btn_resp_tmp" 
     android:id="@+id/resp1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:background="@drawable/CustomSelector" 
     android:enabled="true" /> 
    <ToggleButton 
    (...) 

Пример моего Drawable:

<selector xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item android:state_checked="true"> 
    <shape > 
     <solid 
      android:color="#FF9800" /> 
     <stroke 
      android:width="1dp" 
      android:color="#E0E0E0" /> 
     <corners 
      android:radius="4dp" /> 
     <padding 
      android:left="10dp" 
      android:right="10dp" 
      android:top="10dp" 
      android:bottom="10dp" /> 
    </shape> 
    </item> 
    <item > 
    <shape > 
     <solid 
      android:color="#E0E0E0" /> 
     <stroke 
      android:width="1dp" 
      android:color="#E0E0E0" /> 
     <corners 
      android:radius="4dp" /> 
     <padding 
      android:left="10dp" 
      android:right="10dp" 
      android:top="10dp" 
      android:bottom="10dp" /> 
    </shape> 
    </item> 
</selector> 

Любая помощь будет высоко ценится, так как мой Google-фу серьезно не удается мне на этой задаче.

ответ

1

При установке отступов формы, как следующий код:

<padding 
     android:left="10dp" 
     android:right="10dp" 
     android:top="10dp" 
     android:bottom="10dp" /> 

Это означает, что красная линия 10dp.

enter image description here

Но в селекторе вы не можете определить запас формы. Таким образом, вы можете установить маркер переключателя:

<ToggleButton 
     ...... 
     android:layout_marginRight="5dp" 
     ..... /> 
+0

Вы задумаетесь, спасибо. Использование полей в макете произошло со мной, но я думал, что должно быть что-то, что я делал неправильно, поскольку стандартные кнопки Android имеют поля «встроенные». Это освобождает, не ища ответа. – CyberClaw

Смежные вопросы