有的时候框架提供的功能我们不想要,但是框架有没有属性让我们设置,这个时候强大的KVC就出现了
笔者在使用HUPhotoBrowser的时候,打开的轮播图提供的保存功能, 然而项目需要不需要这个功能. 通过分析源代码 下面的方法可以轻松解决这个问题, 避免我们迫不得已去改源代码.
HUPhotoBrowser *browser = [HUPhotoBrowser showFromImageView:[self.cycleScrollView valueForKey:@"_backgroundImageView"] withURLStrings:self.imageArr atIndex:index];
UIView *toolBarview = [browser valueForKey:@"toolBar"];
for (UIView *subView in toolBarview.subviews) {
if ([subView isKindOfClass:[UIButton class]]) {
[subView removeFromSuperview];
}
}
小窍门
UIView 方法: recursiveDescription
可以显示出当前视图的详细层级结构,可以在代码中直接调用,也可以在GDB中调用,
断点后,在GDB中调用时需要借助另一个GDB命令:print-object:即我们常用的po
使用 po [self.view recursiveDescription];