草庐IT

delegations

全部标签

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

iphone - 为什么即使在设置委托(delegate)协议(protocol)后也不会调用 UIPickerView 委托(delegate)方法?

`我正在创建一个即将到来的UIPickerView,但它没有从数组中获取数据,因为未调用委托(delegate)方法。我设置了UIPickerviewdelegate和数据源,但仍然无法正常工作。不调用委托(delegate)方法的原因可能是什么?????如果有人知道,请告诉我。提前致谢。picker.delegate=self;picker.dataSource=self;arrayOfState=[[NSMutableArrayalloc]init];[self.arrayOfStateaddObject:@"Assam"];[arrayOfStateaddObject:@"And

ios - 具有预实现委托(delegate)方法的子类对象

我正在尝试创建一个NSURLConnection的子类,它已经预先实现了一个委托(delegate)方法。我目前的方法是使用一个“代理”委托(delegate),它预先填充了这个方法并像这样调用其他方法:-(BOOL)connectionShouldUseCredentialStorage:(NSURLConnection*)connection{if([self.delegaterespondsToSelector:@selector(connectionShouldUseCredentialStorage:)]){return[self.delegateconnectionShou

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

所以我设置了JASidePanels,其中包含一个实现JASidePanelController的根Controller和我的左面板,它是一个不同的UIViewController。我的问题是左侧面板只接收一次viewWillAppearviewDidAppear/disappear和viewWillAppear和viewDid/WillLoad,用户第一次将中心面板滑开。从那时起,这些回调函数不会再被调用。什么是最好的方式或我应该如何响应我的左面板ViewController中的这些事件。 最佳答案 好吧,我明白了。有一个属性叫做

objective-c - Xcode Interface Builder 不显示 App Delegate 对象

我正在使用“IOS编程:BigNerdRanch指南(第2版)”自学Objective-C和iOS编程,我遇到了一个问题,教程要求我创建与AppDelegate对象的连接,但是这个对象没有出现在我的Interfacebuilder的对象列表中。我很确定它要么是错字,要么是版本不同,因为这本书略微落后于我的Xcode(4.2)版本。我已经包含了代码。我相当确定MOCAppDelegate对象应该出现在IB中,但我还不够熟悉,无法知道我需要更改哪些代码才能实现。具体问题:如何调整下面的代码,以便我在IB中的对象列表,以便我可以按照教程图形中的说明执行连接?注意:我研究并发现了这个:Havi

ios - 使用 NSURLSession 自定义委托(delegate)时不调用身份验证质询方法

我正在开发一个通过Restful服务连接到ASP.NETWebAPI的iOS应用程序。我想使用自定义委托(delegate)来处理身份验证挑战。但是委托(delegate)方法不会被调用。http请求在ViewController中用以下方法编写:-(IBAction)test:(UIButton*)sender{//GetBearerTokenKeychainItemWrapper*keychainItem=[[KeychainItemWrapperalloc]initWithIdentifier:@"BearerToken"accessGroup:nil];NSString*bea

iphone - 从 App Delegate 中的 Storyboard获取初始 View Controller

我正在尝试访问Storyboard的初始ViewController。它是一个导航Controller,通过序列连接到第二个ViewController。因此,在我的应用程序完成启动后,我想直接显示通过segue连接的viewController。我用这样的代码试过了,但它不起作用......UINavigationController*navController=(UINavigationController*)self.window.rootViewController;[navController.topViewControllerperformSegueWithIdentifi