我有一个 LinearLayout,这个 LinearLayout 将保存动态放置的 View 。我需要找出 LinearLayout 子项的宽度,但这必须在 onCreate 方法中完成。通过研究,我发现您不能通过这种方法使用 getWidth。因此,我改用 onWindowFocusChanged,它适用于父 LinearLayout(返回实际大小),但不适用于其子项。
我注意到的另一件事是,当屏幕逐渐消失并且屏幕被锁定时,我可以在日志中看到返回的 child 的实际宽度(我认为 Activity 正在暂停)。
我真的卡住了,这是必需的,因为我需要根据 child 的宽度动态放置这些 View 。
最佳答案
您也许可以通过以下方式获得。但正如其他人指出的那样,这可能不是一个好主意。
LinearLayout.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
LinearLayout.getMeasuredWidth();
关于java - 为什么 LinearLayout 子 getWidth 方法返回 0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10923321/