我想以编程方式设置文本视图的顶部填充。我知道您可以使用方法 setPadding()
来做到这一点。但问题是这个方法需要4个参数:left, top, right, bottom。我不想改变左,右和底部,我只想改变顶部填充。
那可能吗?
原文由 Xander 发布,翻译遵循 CC BY-SA 4.0 许可协议
我想以编程方式设置文本视图的顶部填充。我知道您可以使用方法 setPadding()
来做到这一点。但问题是这个方法需要4个参数:left, top, right, bottom。我不想改变左,右和底部,我只想改变顶部填充。
那可能吗?
原文由 Xander 发布,翻译遵循 CC BY-SA 4.0 许可协议
我通常创建一个简单的实用方法只是为了不忘记或放错其他填充:
public static void setPaddingLeft(View v, int leftPaddingDp) {
int leftPaddingPx = dpToPx(leftPaddingDp);
v.setPadding(leftPaddingPx, v.getPaddingTop(), v.getPaddingRight(), v.getPaddingBottom());
}
稍后像这样使用,提供 dp 单位,就像在 xmls 中一样:
Utils.setPaddingLeft(myExampleTextView, 10)
原文由 pkk 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
利用
仅调整您需要的参数并将其他参数设置为零。
如果您需要保留其他现有填充,请使用
yourView.getPaddingLeft()
、yourView.getPaddingTop()
等等。