#android #material-design #material-components-android #material-components #android-switch
#Android #материал-дизайн #материал-компоненты-android #материал-компоненты #android-переключатель
Вопрос:
Я использовал «com.google.android.material.switchmaterial.SwitchMaterial» в этом левом поле имеет некоторое пространство. Как это уменьшить?
Мне нужно выровнять текст everyone по прямой. Я не добавляю конечное поле или заполнение переключателя, только поле родительского макета, которое я установил. Ниже мой XML-код и стили. Пожалуйста, предоставьте свое предложение по уменьшению этого запаса, спасибо.
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp">
<RelativeLayout
android:id="@ id/who_can"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp">
<com.google.android.material.textview.MaterialTextView
style="@style/TextBlackRegular"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_toStartOf="@ id/video_view_result"
android:singleLine="true"
android:text="@string/who_can_view"
android:textSize="@dimen/text_small"
android:visibility="visible" />
<com.google.android.material.textview.MaterialTextView
android:id="@ id/video_view_result"
style="@style/TextBlackRegular"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:singleLine="true"
android:text="Everyone"
android:textSize="@dimen/text_small" />
</RelativeLayout>
<com.google.android.material.switchmaterial.SwitchMaterial
android:id="@ id/save_switch"
style="@style/SwitchButtonStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@ id/who_can"
android:checked="true"
android:text="@string/save_gallery"
android:textSize="@dimen/text_small"
app:trackTint="@color/colorSecondaryText" />
</RelativeLayout>
<style name="SwitchButtonStyle" parent="Widget.MaterialComponents.CompoundButton.Switch">
<item name="thumbTint">@drawable/switch_selector</item>
<item name="android:fontFamily">@font/font_regular</item>
<item name="android:textColor">@color/colorBlack</item>
</style>
Ответ №1:
В вашем relativeLayout/topRelativeLayout
случае вы добавили маржу. Это означает, что вы хотите увеличить маржу со всех сторон. Вот почему это происходит
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp">
удалите android:layout_margin="10dp"
. Добавьте margin_top
, margin_right
что вы хотите сделать.
Комментарии:
1. Я удалил это поле, кто может просматривать мое видео, все и сохранить в галерее весь текст выровнен по левой и правой сторонам, но все равно отображается конечный край переключателя.
2. @RaJ Как я могу сказать, кто может просматривать ваше видео? Вы только что просили
margin
. И как мы можем это сказать, не предоставляя намjava/kotlin
file. И проверьте, куда вы добавилиmargin_end
сейчас. Чем удалить это. Тогда endmargin
не будет отображаться
Ответ №2:
Вы должны указать содержимое переноса для ширины переключателя или поместить его в новый относительный макет
Ответ №3:
если ваше конечное поле отображается после удаления из
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp">
затем
<com.google.android.material.switchmaterial.SwitchMaterial
android:id="@ id/save_switch"
style="@style/SwitchButtonStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@ id/who_can"
android:checked="true"
android:text="@string/save_gallery"
android:textSize="@dimen/text_small"
app:trackTint="@color/colorSecondaryText" />
изменение в SwitchButtonStyle дает вам некоторое значение по умолчанию, мы будем рады, если вы поделитесь целым файлом