我花了一整天的时间调试各种将自定义添加ViewGroup
到另一个自定义中的方法,ViewGroup
并且几乎发疯了,因为它们都不起作用,并且没有官方文档或示例可以显示它是如何完成的......
基本上,我有 2 个自定义ViewGroup
:
HorizontalDockView
延伸ViewGroup
GameEntryView
延伸FrameLayout
HorizontalDockView
覆盖onDraw
,onMeasure
等,一切都被正常调用并完美运行。但是,当我GameEntryView
从内部HorizontalDockView
的构造函数中创建并调用addView(gameEntryView)
时,无论从任何线程调用的,或者我在 parent 上调用、加载和 setContentView 的情况gameEntryView
如何,都将永远不会显示。如果我列出所有对象仍然存在。layoutParams
addView
HorizontalDockView
horizontalDockView.getChildAt();
gameEntryView
绝望,我尝试通过 GameEntryView 的onDraw
, onMeasure
,dispatchDraw
方法进行调试,并意识到它们实际上都没有被调用!不……一次也没有!
我是否需要遍历父级(HorizontalDockView) on* 调用中的所有子视图并显式调用子级 on*?我只是在父级上调用 super.on*() 。
我确实调用setWillNotDraw( false );
了父类和子类。
如何让孩子出现在父母的视野中?非常感谢简单的示例或现有的小型开源项目!
非常感谢!