ios - viewWillAppear ext 的 JASidePanels 委托(delegate)未被调用

标签 ios objective-c uiviewcontroller jasidepanels

所以我设置了 JASidePanels,其中包含一个实现 JASidePanelController 的根 Controller 和我的左面板,它是一个不同的 UIViewController。

我的问题是左侧面板只接收一次 viewWillAppear viewDidAppear/disappear 和 viewWillAppear 和 viewDid/WillLoad,用户第一次将中心面板滑开。从那时起,这些回调函数不会再被调用。

什么是最好的方式或我应该如何响应我的左面板 View Controller 中的这些事件。

最佳答案

好吧,我明白了。

有一个属性叫做

@property (nonatomic, readonly) JASidePanelState state;

它指出: “面板的当前状态。使用 KVO 监控状态变化”

我可以用这个监控 3 种状态变化:

JASidePanelCenterVisible = 1,
JASidePanelLeftVisible,
JASidePanelRightVisible

我现在对 KVO 对状态的更改使用react。在我左侧面板的 viewDidLoad 中,我有:

[self.sidePanelController addObserver:self forKeyPath:@"state" options:NSKeyValueObservingOptionNew context:nil];

并接收状态变化:

- (void)observeValueForKeyPath:(NSString *)keyPath
                      ofObject:(id)object
                        change:(NSDictionary *)change
                       context:(void *)context
{
    if ([keyPath isEqual:@"state"]) {
        if ([change[@"new"] isEqual:[NSNumber numberWithInt:1]]) {
            NSLog(@"Saving settings");
        }
    }
}

关于ios - viewWillAppear ext 的 JASidePanels 委托(delegate)未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24323396/

相关文章:

ios - UICollectionView 添加了多个装饰 View

ios - 如何使 VLCMediaPlayer 静音

ios - 在调用委托(delegate)方法之前释放 UIViewController

ios - 屏幕上未显示的 VC 的屏幕截图

objective-c - 如何将 iphone/ipad 连接到远程 MSSQLSERVER 数据库?

ios - UILabel 中的多行不显示全文

ios - 在 UIImageView 中的两个图像之间转换的最佳方式

ios - 以编程方式实例化自定义 View Controller 并通过标签获取 subview

ios - 创建应用程序时是否必须指定 "use core data "?

ios - 如何使 UIControl 在 XCUITest 中显示为按钮?