为了账号安全,请及时绑定邮箱和手机立即绑定

无法以编程方式在其父布局内对齐中心自定义线性布局

无法以编程方式在其父布局内对齐中心自定义线性布局

婷婷同学_ 2022-01-06 17:30:37
我有一个自定义的线性布局,它是一条红色路径,如我在下面的链接中附加的图像所示,它包含一个文本视图和一个按钮。我想通过使红色路径与父路径匹配来使文本和按钮在灰色路径内居中,但我无法实现。我曾经尝试过很多方法,通过设置布局参数来匹配父元素并以编程方式设置重心以使这些元素居中。但是这些方法都行不通。在此处输入图片说明这是我的代码示例:val layoutParams = LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT)layoutParams.gravity = Gravity.CENTERgrayLayout.addView(redLayout)grayLayout.layoutParams = layoutParams任何线索来帮助我。提前致谢。
查看完整描述

3 回答

?
慕森王

TA贡献1777条经验 获得超3个赞

layoutParams.gravity = Gravity.CENTER

设置布局中包含的视图的重力。
因此,如果您想将灰色布局居中放置在红色布局中,请
将此属性应用于红色布局。
您也可以在 xml 中执行此操作:

android:gravity="center"


查看完整回答
反对 回复 2022-01-06
?
www说

TA贡献1775条经验 获得超8个赞

不要为 2 个不同的对象重复使用相同的布局参数。为每个对象创建一个新的布局参数。


查看完整回答
反对 回复 2022-01-06
?
当年话下

TA贡献1890条经验 获得超9个赞

我已经找到了答案,我忘了以编程方式将 layoutParams 设置为我的 redLayout,我只将它设置在 xml 文件中。由于红色布局是自定义布局,除非我们以编程方式设置,否则在 xml 中设置 match_parent 不起作用。感谢大家花时间提出这个问题。


查看完整回答
反对 回复 2022-01-06
  • 3 回答
  • 0 关注
  • 117 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信