Android 如何以编程方式将左边框和上边框设置为框架布局?

Android 如何以编程方式将左边框和上边框设置为框架布局?,android,android-framelayout,layoutmargins,Android,Android Framelayout,Layoutmargins,我在一个相对布局中有一个框架布局,我想将框架布局整体向左和向上移动一点。我一直在使用setLeft()和setTop()方法。这是在扩大视野,但对我来说还是可以的。我的问题是,我希望在需要时恢复原始的未拉伸帧布局。但是设置setRight()并放置相同的参数似乎不起作用。请帮忙 您可以使用setMargin来设置框架布局 val par = framelayout?.layoutParams as FrameLayout.LayoutParams par.rightMargin = 10 pa

我在一个相对布局中有一个
框架布局
,我想将框架布局整体向左和向上移动一点。我一直在使用
setLeft()
setTop()
方法。这是在扩大视野,但对我来说还是可以的。我的问题是,我希望在需要时恢复原始的未拉伸帧布局。但是设置
setRight()
并放置相同的参数似乎不起作用。请帮忙

您可以使用setMargin来设置框架布局

val par = framelayout?.layoutParams as FrameLayout.LayoutParams

par.rightMargin = 10
par.leftMargin = 30

不能像设置填充那样为视图设置边距。框架布局需要布局参数,然后将边距设置为布局参数

FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT);
layoutParams.setMargins(5, 5, 5, 5);
frameLayout.setLayoutParams(layoutParams);

您的框架布局是否与父视图?相对布局是framelayout的父视图。