如何删除 Android Material Slider 周围的间距?

Posted

技术标签:

【中文标题】如何删除 Android Material Slider 周围的间距?【英文标题】:How can I remove the spacing around an Android Material Slider? 【发布时间】:2021-12-23 08:42:01 【问题描述】:

尝试整理我的 UI,但我似乎无法删除滑块周围的间距。这是一个基本的材质滑块(如下图所示)。我试过改变 minHeight 和 minWidth 没有运气,我不想消极地填充。我认为必须有一种方法可以使滑块的边界刚好在实际的滑块图像周围。

See Slider Example

【问题讨论】:

【参考方案1】:

滑块的高度由尺寸R.dimen.mtrl_slider_widget_height 控制。您可以通过在 dimens.xml

中指定来更改高度
<dimen name="mtrl_slider_widget_height">30dp</dimen>

或者你想要的任何高度。 BaseSlider.java 中加载了一些其他资源,可能会有所帮助。

private void loadResources(@NonNull Resources resources) 
    widgetHeight = resources.getDimensionPixelSize(R.dimen.mtrl_slider_widget_height);

    minTrackSidePadding = resources.getDimensionPixelOffset(R.dimen.mtrl_slider_track_side_padding);
    trackSidePadding = minTrackSidePadding;

    defaultThumbRadius = resources.getDimensionPixelSize(R.dimen.mtrl_slider_thumb_radius);

    trackTop = resources.getDimensionPixelOffset(R.dimen.mtrl_slider_track_top);

    labelPadding = resources.getDimensionPixelSize(R.dimen.mtrl_slider_label_padding);

【讨论】:

以上是关于如何删除 Android Material Slider 周围的间距?的主要内容,如果未能解决你的问题,请参考以下文章