gpt4 book ai didi

ios - 如何知道 UIViewController 的 subview 何时被删除?

转载 作者:行者123 更新时间:2023-11-28 17:39:53 25 4
gpt4 key购买 nike

我正在为 iOS 上的游戏应用程序使用 TapJoy SDK。 SDK 有一种在应用程序顶部显示 View 的方法:http://knowledge.tapjoy.com/integration-8-x/ios/pb/featured-app

我可以给函数一个 UIVIewController 参数,这样我就可以自己管理显示/隐藏。

我创建了以下 UIViewVontroller:

@interface MyViewController : UIViewController

- (void) viewDidLoad;
- (void) viewDidUnload;
- (void) viewWillLoad;
- (void) viewWillUnload;

- (void)viewWillAppear:(BOOL)animated;
- (void)viewDidAppear:(BOOL)animated;
- (void)viewWillDisappear:(BOOL)animated;
- (void)viewDidDisappear:(BOOL)animated;

@end

@implementation MyViewController

- (void) viewDidLoad
{
self.view = GRAPHIC_SYSTEM::GetGlView();

NSLog(@"viewDidLoad");
}

- (void) viewDidUnload
{
NSLog(@"viewDidUnload");
}

- (void) viewWillLoad
{
NSLog(@"viewWillLoad");
}

- (void) viewWillUnload
{
NSLog(@"viewWillUnload");
}

- (void)viewWillAppear: (bool)animated
{
NSLog(@"viewWillAppear");
}

- (void)viewDidAppear:(BOOL)animated
{
NSLog(@"viewDidAppear");
}

- (void)viewWillDisappear:(BOOL)animated
{
NSLog(@"viewWillDisappear");
}

- (void)viewDidDisappear:(BOOL)animated
{
NSLog(@"viewDidDisappear");
}

@end

当 TapJoy 通知我某个功能应用可用时,我会使用我的 View Controller 显示它:

[TapjoyConnect showFeaturedAppFullScreenAdWithViewController: [[MyViewController alloc] init]];

TapJoy View 成功显示在我的游戏顶部。

有两个问题:

  1. 控制台中仅打印 viewDidLoad 日志。没有打印其他日志消息
  2. 我想知道用户什么时候关闭了 TapJoy View ,所以我可以在那个时候添加一些处理,但是没有调用 View Controller 的其他函数。

我在 SO 上看到一些用户建议使用通知。不幸的是,由于我无法访问 TapJoy SDK 的源代码,我需要找到其他方法。

你有什么想法吗?

提前致谢

迈克

最佳答案

好吧,我可以通过创建自定义 UIView 来解决这个问题,我将其设置为 UIViewController View 。

接下来,我重写了这个自定义 View 的 willRemoveSubview 函数。

通过 UIViewController 的 viewDidLoad 函数,我知道什么时候显示 View ,什么时候移除 TapJoy View ,所以我也可以移除我的自定义 View 。

关于ios - 如何知道 UIViewController 的 subview 何时被删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8576826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com