【发布时间】:2016-07-08 15:35:59
【问题描述】:
我通过扩展 ViewGroup 创建了一个自定义 viewGroup,但即使我可以访问 LayoutParams,我似乎也无法为该对象使用 setMargins 属性。
【问题讨论】:
我通过扩展 ViewGroup 创建了一个自定义 viewGroup,但即使我可以访问 LayoutParams,我似乎也无法为该对象使用 setMargins 属性。
【问题讨论】:
如果您可以访问LayoutParams(它们不是null),请尝试将它们转换为MarginLayoutParams。大多数LayoutParams(例如LinearLayout.LayoutParams、RelativeLayout.LayoutParams 扩展MarginLayoutParams)
MarginLayoutParams params = (MarginLayoutParams) getLayoutParams();
params.setMargins(left, top, right, bottom);
requestLayout();
【讨论】:
LayoutParams params = new LayoutParams(
LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
params.setMargins(left, top, right, bottom);
yourView.setLayoutParams(params);
希望对您有所帮助!
【讨论】: