草庐IT

LayoutInflater_Delegate

全部标签

iphone - 在调用 respondsToSelector 之前检查委托(delegate)是否仍然存在

我制作了一个UIView子类来处理iAds和adMob。ViewController是子类委托(delegate),一切正常。然而,有时,ViewController会在获取广告之前消失。为了解决这个问题,我在ViewController的dealloc实现中将delegate设置为nil。我遇到的问题是,有时respondsToSelector:方法会在ViewController被释放的同时运行。这会导致崩溃。有谁知道我该如何重新安排这个?广告View在大约10个不同的ViewController上,所以我想要一个地方来创建广告代码。非常感谢 最佳答案

ios - 委托(delegate)成为噩梦的多层 subview Controller ——它们应该如何相互通信?

这对我来说是个严重的问题。在代码库上工作,多层subviewController大约有4-5层深-这是一款平板电脑应用程序,ViewController之间的解耦程度非常高。第5层subviewController想要向顶层ViewController发送消息以显示模态。第4层和第3层也有不同的消息,所以基本上现在我有4个协议(protocol),从嵌套在内部深处的subviewController向祖先ViewController发送消息变得非常复杂。有更简单的方法吗?我们考虑过使用NSNotification但并不是特别喜欢它,因为它很难调试,而且订阅不是我们控制范围内的明确依赖项

ios - searchBarTextDidBeginEditing 委托(delegate)方法调用了两次

我正在调试我的代码,每次我点击搜索栏(位于导航栏中)时,UISearchBar的委托(delegate)方法searchBarTextDidBeginEditing:被调用两次。奇怪的是只有这个委托(delegate)方法被调用了两次。其他的在整个过程中只被调用一次,这是正确的行为。-(BOOL)searchBarShouldBeginEditing:(UISearchBar*)searchBar{//calledonlyoncereturnYES;}-(void)searchBarTextDidBeginEditing:(UISearchBar*)searchBar{//called

ios - 实现嵌入在两个独立容器 Controller 中的 View 之间的委托(delegate)

我Storyboard的相关部分如下所示:您可以看到自定义“容器Controller”View包含两个容器View,一个通过嵌入式转场链接到导航Controller,另一个通过嵌入式转场链接到自定义“主视图Controller”(实现TableViewController)。NavigationController组件还与自定义“LocationFilterController”有关系。我需要实现委托(delegate),以便当位置过滤器Controller中的一个UIStepper是incr./decr.时,主视图Controller中的TableView知道相应地更新它显示的数据。

ios - NSURLSession 委托(delegate)和 completionHandler

我正在使用NSURLSession+NSURLDownloadTask和completionHandler:[sessiondownloadTaskWithURL:downloadURLcompletionHandler:^(NSURL*location,NSURLResponse*response,NSError*error)效果不错。但是当我想在progressBar中跟踪下载时,我遇到了问题。我正在尝试使用NSURLSessionDownloadDelegate来跟踪加载。对于上层的completionHandler,它永远不会被调用?!使用:NSURLSessionDownlo

ios - 在我们之前尚未在 GMSPlacePickerViewController 实例上设置委托(delegate)

我已经使用IOS和GoogleMapsApi玩了几天,两天前API升级到2.3版,不推荐使用GMSPlacePicker。Deprecationnotice:GMSPlacePickerNotice:Theimplementationoftheplacepickerhaschanged.Asofversion2.3oftheGooglePlacesAPIforiOS,theGMSPlacePickerclassisdeprecated,replacedbyGMSPlacePickerViewController.UseoftheGMSPlacePickerclasswillonlybe

objective-c - 在 IOS 中关闭应用程序时将调用什么委托(delegate)方法?

就像我的问题一样,我只想知道应用关闭时会调用什么委托(delegate)方法?我以为它是ApplicationWillTerminate,但不是,如果应用程序占用大量内存而没有剩余内存,则调用该委托(delegate)方法,因此系统调用该方法。那么,当应用程序关闭时将调用什么委托(delegate)方法? 最佳答案 -(void)applicationDidEnterBackground:(UIApplication*)application 关于objective-c-在IOS中关闭应

iphone - 从 NSInvocation 或 NSNotificationCentre 或 Delegate 方法中使用哪个更好

在整个项目中,使用哪个更好地将数据从一个类流向另一个类?NSInvocationNSNotificationCentre委托(delegate)方法或者通过我不知道的任何其他方法?? 最佳答案 它们之所以存在,是因为它们都服务于不同的目的。简而言之:NS调用发送到一个对象的抽象消息,带有可选参数,表示为一个对象。不经常使用,特别是自引入block以来。也可以用作避免创建NSOperation子类的便捷方法(参见NSIvocationOperation)。NSNotificationCenter向任意数量的未知“听众”广播消息。一对多

ios - 为什么 UIKit 委托(delegate) "assign"而不是 "weak"?

如标题所述,为什么UIKit与会代表(assign)而不是(weak)?参见UIPopovercontroller.h例如:@property(nonatomic,assign)iddelegate;据我所知,与弱保留属性相比,这并没有带来任何好处,但委托(delegate)人需要管理自己作为委托(delegate)人的生命周期时会出现很多问题。这是向后兼容性问题吗?谢谢 最佳答案 因为大多数这些属性在iOSSDK支持弱属性之前就已经存在。weak属性仅在iOS5.0及更高版本上受支持。我不得不猜测,一旦iOS4.x和更早版本成为历

ios - 委托(delegate)消息是否必须始终将 void 作为返回类型?

我有一个场景,ObjA在按下按钮时向ObjB发送委托(delegate)消息。ObjB根据委托(delegate)调用采取一些行动。对象A想要根据调用委托(delegate)消息后发生的结果在屏幕上显示一些内容。假设对象B维护一个计数器,记录该操作发生了多少次。所以当ObjA按下按钮并调用委托(delegate)方法时,该委托(delegate)方法返回一个值(在我的例子中是当前计数器)是否是个好主意?以便ObjA可以显示计数器更新的值。在这种情况下,同一消息同时充当委托(delegate)和数据源。对我来说,ObjA是一个View,ObjB是ViewController。我的实现有缺