【问题标题】:view.getLayoutParams().width not working with nougatview.getLayoutParams().width 不适用于牛轧糖
【发布时间】:2016-12-30 10:14:10
【问题描述】:

我已经编写了动态设置视图高度和宽度的代码

view.getLayoutParams().width = 120;
view.getLayoutParams().height = 120;

它与以下牛轧糖设备完美配合,但牛轧糖无法正常工作。它只是将高度和宽度设为0。牛轧糖更新后有什么变化吗?

更新:

不管怎么样

1) 当我在设置高度和宽度后使用view.requestLayout()
2)view.setLayoutParams(new LinearLayout.LayoutParams(200, 120));

那么为什么它在不使用这两个选项的情况下在 pre nougat 设备上工作?

【问题讨论】:

  • 您在哪里使用该代码?你确定布局已经画好了?
  • @GVillani82 在 onGlobatLayout() 里面,所以会在视图创建后调用。我用过addOnGlobalLayoutListener()
  • view.requestLayout() 对我有用,谢谢

标签: android layoutparams android-7.0-nougat


【解决方案1】:

设置widthheight后尝试调用:

view.requestLayout()

【讨论】:

  • 牛轧糖更新了吗?因为没有调用requestLayout() 它也在牛轧糖前设备上工作
  • 我不确定牛轧糖只是想改变参数。
【解决方案2】:

试试这个

view.setLayoutParams(new LinearLayout.LayoutParams(200, 120));

或者这个

ViewGroup.LayoutParams params = view.getLayoutParams();
params.height = 130;
params.width = 130;
view.setLayoutParams(params);

希望对你有所帮助

【讨论】:

  • 感谢@Ravi Rupareliya 的支持...欢迎您。
猜你喜欢
  • 1970-01-01
  • 2018-11-08
  • 1970-01-01
  • 1970-01-01
  • 2016-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多