代码动态设置margin

  • View 没有setMargins().
  • ViewGroup 有setMargins().

所以在java代码中动态改变Viewmargin时,需要通过LayoutParams进行设置。

  1. 获取LayoutParams: 通过getLayoutParams()
  2. 得到LayoutParams,但是要确定其类型,是RelativeLayoutParams or LinearLayoutParams.

这个LayoutParams的类型是根据它的父布局确定的,不是根据自身的View。

  1. 强转成其父布局的类型,再setMargins().

你可能感兴趣的:(代码动态设置margin)