在
Eclipse 平台中扩展ViewPart
的自定义视图的生存期是多少?
它是在视图出现时创建的,在消失时销毁的吗?
如果是这样,那么为什么创建发生在方法 createPartControl()
而不是构造函数中?
视图部分是在第一次需要显示时构造的。 在此构造过程中调用createPartControl
,但
public void init(IViewSite site);
和
public void init(IViewSite site, IMemento memento);
在createPartControl
之前调用方法以允许初始化某些内容。基ViewPart
类通常处理此问题,但如果需要,可以重写这些方法。
更新:尽管实际上hideView
调用了用于"关闭"视图的 API,但它似乎确实调用了视图的 dispose
方法,并在下次使用时重建它。如果视图在多个透视上打开,则在最后一个参照关闭之前不会释放该视图。