2013-12-10 59 views
0

我在UINavigationController下放置了一个UITableViewController所有的普通UITableView。现在神秘_UIParallaxDimmingView。它是什么?

,看看这段代码:

 [BGHPTools vDoForeGroundAndWait:^{ 
      PO(vi); 
      PO([vi superview]); 
      PO ([[vi superview]superview]); 
      PO ([[[vi superview]superview]superview]); 
     }]; 
     NSArray * arObjects =blarGetArrayTobeParsedWith(weakBODo);//No view object is manipulated here!!!! 
     [BGHPTools vDoForeGroundAndWait:^{ 
      PO(vi); 
      PO([vi superview]); 
      PO ([[vi superview]superview]); 
      PO ([[[vi superview]superview]superview]); 
     }]; 

代码blarGetArrayTobeParsedWith简单地从互联网和所有显示的目的下载的东西,只是什么也不做,等待一段时间

第一组PO是像这样:

2013-12-10 21:14:43.257 [8620:9407] vi: <BGTableViewWithBackgroundAndTopAndBottom: 0xd36d600; baseClass = UITableView; frame = (0 0; 320 480); clipsToBounds = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x15d64320>; layer = <CALayer: 0x15d64890>; contentOffset: {0, -64}> 
2013-12-10 21:14:43.259 [8620:9407] [vi superview]: <_UIParallaxDimmingView: 0x15f48a40; frame = (0 0; 320 480); opaque = NO; layer = <CALayer: 0x15f79d00>> 
2013-12-10 21:14:43.259 [8620:9407] [[vi superview]superview]: <UIView: 0x15850530; frame = (0 0; 320 480); layer = <: 0x15860480>> 
2013-12-10 21:14:43.261 [8620:9407] [[[vi superview]superview]superview]: <UIViewControllerWrapperView: 0xcb35660; frame = (0 0; 320 480); autoresize = W+H; userInteractionEnabled = NO; layer = <CALayer: 0xcb392f0>> 

第二组PO的显示

2013-12-10 21:22:26.145 [8620:9407] vi: <BGTableViewWithBackgroundAndTopAndBottom: 0xd36d600; baseClass = UITableView; frame = (0 0; 320 480); clipsToBounds = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x15d64320>; layer = <CALayer: 0x15d64890>; contentOffset: {0, -64}> 
2013-12-10 21:22:26.145 [8620:9407] [vi superview]: <UIViewControllerWrapperView: 0xcb35660; frame = (0 0; 320 480); autoresize = W+H; layer = <CALayer: 0xcb392f0>> 
2013-12-10 21:22:26.146 [8620:9407] [[vi superview]superview]: <UINavigationTransitionView: 0x11cac940; frame = (0 0; 320 480); clipsToBounds = YES; autoresize = W+H; layer = <CALayer: 0x11cad190>> 
2013-12-10 21:22:26.146 [8620:9407] [[[vi superview]superview]superview]: <UILayoutContainerView: 0x11ca8ef0; frame = (0 0; 320 480); autoresize = W+H; gestureRecognizers = <NSArray: 0x11cb1070>; layer = <CALayer: 0x11ca69e0>> 

看起来,vi是一个UITableView,然后改变它的父视图。

为什么?

回答

2

_UIParalaxDimmingView,从名字上来看,有两个目的:

  1. 包装的幕后控制人昏暗的内容
  2. 一个paralax效果添加到包装控制器

我不知道你的但我期望这种控制器在以下情况下:

  1. 主办视图控制器
  2. UIPopoverController
  3. 在特定的控制器转换(动画)从互联网

如果blarGetArrayTobeParsedWith下载数据,当动画正在运行,并且当动画结束的差异可能是视图层次之间。