gpt4 book ai didi

android - 在 Android 上使用 setMarginEnd 和 setMarginStart 的问题

转载 作者:行者123 更新时间:2023-12-05 05:26:29 26 4
gpt4 key购买 nike

我正在尝试通过代码设置一些边距。尽管如此,我在设置开始和结束边距时遇到了麻烦。出于一个奇怪的原因,使用方法 setMarginStart 和 setMarginEnd 不会修改 View 的左右边距。我附上了我正在使用的代码:

    RelativeLayout.MarginLayoutParams  params = (RelativeLayout.MarginLayoutParams) loopMainLayout.getLayoutParams();
float fabRadius = context.getResources().getDimension(R.dimen.fab_size) / 2;
params.bottomMargin = (int) (params.bottomMargin + fabRadius);
params.topMargin = (int) (params.topMargin + fabRadius);
params.setMarginEnd(params.getMarginEnd() + (int) fabRadius);
params.setMarginStart(params.getMarginStart() + (int)
loopMainLayout.setLayoutParams(

为了让布局计算结束和开始边距,我是否在这里遗漏了任何类型的函数调用?

注意:如果我使用 params.leftMargin 和 params.rightMargin 一切正常。但我正在尝试使用结束和开始边距作为最佳实践。

最佳答案

聚会有点晚了,但我找到了一个可行的解决方案,适用于像我一样偶然发现这个问题的人。您需要根据源代码中的文档使用更新后的参数在 View 上调用 setLayoutParams(LayoutParams)(查找 MarginLayoutParams.startMargin|endMargin)MarginLayoutParams

关于android - 在 Android 上使用 setMarginEnd 和 setMarginStart 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25749317/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com