草庐IT

delegating-constructor

全部标签

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。我的实现有缺

ios - 当我在 UITextView 委托(delegate)方法 textViewDidChange 中设置属性文本时如何停止光标更改位置

以下代码将textView字符串中的“test”更改为红色,但它也具有在调用textViewDidChange时将光标移动到文本block末尾的效果(也就是进行任何文本编辑时,这非常烦人).在textViewDidChange中设置AttributedText时,如何防止光标移动?-(void)textViewDidChange:(UITextView*)textView{NSString*currentString=self.textView.text;NSMutableAttributedString*string=[[NSMutableAttributedStringalloc]

objective-c - 如何在接口(interface)声明中有条件地声明委托(delegate)?

我有一个针对两个不同目标构建的Xcode4项目。我在build设置中定义了一些常量,因此我可以像这样为每个目标运行不同的代码:#ifdefVERSION1//dothis#else//dothat#endif在一个版本的应用程序中,我需要主视图Controller打开另一个ViewController并成为它的委托(delegate),但另一个版本不使用该ViewController并且不应该编译它的代码或尝试成为它的委托(delegate).我已经像这样设置了主视图Controllerheader:#ifdefVERSION2#import"SpecialViewController