2012-04-22 5 views
3

UIViewController私はUIWindowに表示が追加されています。しかし、私がビューを削除した場合、私はそれがどこにあったのかはわかりません。私のコードは以下の通りです:UIViewを削除するUIWindowから

-(void)createFullAd{ 
    UIViewController *viewController = [UIViewController new]; 
    self.fullAd = [MobclixFullScreenAdViewController new]; 
    self.fullAd.delegate = self; 
    [self.fullAd requestAndDisplayAdFromViewController:viewController]; 
    viewController.view.tag = 999999; 
    [[[[UIApplication sharedApplication] delegate]window] addSubview:viewController.view]; 
} 

- (void)fullScreenAdViewControllerDidDismissAd:(MobclixFullScreenAdViewController*)fullScreenAdViewController{ 
    NSLog(@"Dismissed"); 
    [[[[[UIApplication sharedApplication] delegate] window] viewWithTag:999999]removeFromSuperview]; 

} 

答えて

1

彼。

これは厄介ですが、それは働いている唯一のものです:

-(void)displayAd { 
    self.fullAd = [MobclixFullScreenAdViewController new]; 
    self.fullAd.delegate = self; 
    self.adController = [UIViewController new]; 
    [self.fullAd requestAndDisplayAdFromViewController:self.adController]; 
    [[[[UIApplication sharedApplication] delegate]window] addSubview:self.adController.view]; 
} 
- (void)fullScreenAdViewControllerDidDismissAd:(MobclixFullScreenAdViewController*)fullScreenAdViewController{ 
    [fullScreenAdViewController.view removeFromSuperview]; 
    [[[[UIApplication sharedApplication] delegate]window] setNeedsLayout]; 
    self.adController = nil; 

} 

setNeedsLayoutがキーですが、私が代わりにadControllerのスーパーの窓にそれを呼ばれます。

0

私はこれが正しいビュー階層ではないと思います。建物のターゲットはiOSの5.0以上であれば、私はあなたが[viewController1 addChildViewController:viewController2]

0

はこれを試みるかもしれ使用することを検討すべきだと思う:

彼のポストが戻って私は答えを授与されます場合、私は、このためのアイデアを与えた@dasblinkenlight
-(void)fullScreenAdViewControllerDidDismissAd(MobclixFullScreenAdViewController*)fullScreenAdViewController 
{ 
    NSLog(@"Dismissed"); 
    [fullScreenAdViewController.view removeFromSuperview]; 
} 
関連する問題