2013-12-10 60 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下載數據,當動畫正在運行,並且當動畫結束的差異可能是視圖層次之間。