草庐IT

custom-protocol

全部标签

ios - 请帮助没有意义的协议(protocol)代码

我被这个陈述的一部分难住了:@property(nonatomic,readonly)NSArray>*sections这个属性属于NSFetchedResultsController类。虽然NSFetchedResultsSectionInfo是一个协议(protocol),id是一个必须符合NSFetchedResultsSectionInfo协议(protocol)的对象类型。id不是协议(protocol),因此将它们括在尖括号中>没有意义。语句NSArray>对我来说没有意义,因为您如何使对象类型id成为NSArray类的协议(protocol)。有人可以阐明这一点吗?谢谢。

ios - 如何创建符合 <MKAnnotation> 协议(protocol)的自定义类

我有一张显示所有餐厅对象的map。我正在尝试将餐厅对象传递给map注释,以便我可以显示包含所有餐厅信息的详细View。经过研究,我试图创建一个符合协议(protocol)的类,但是我无法在map中放置注释。这是我的代码:RestaurantAnnotationClass.h(自定义类):#import#import#import"Restaurant.h"staticNSString*restaurantAnnotationIdentifier=@"restaurantAnnotationIdentifier";@interfaceRestaurantAnnotation:NSObje

IOS : Custom Layouts does not work, CollectionView:cellForItemAtIndexPath: 未调用方法

大家好,我是swift的新手,我正在尝试学习使用CollectionView,我正在学习本教程:CustomLayouts:AWorkedExample不幸的是它不适合我。我注意到CollectionView:cellForItemAtIndexPath:方法没有被调用,我认为这可能是主要问题。我将文件放在以下链接中:Workingfile,如果有人知道这个问题,请让我帮忙。非常感谢 最佳答案 您的自定义布局类有问题。如果您将布局类更改为默认流布局-一切正常,那么您可能需要查看布局类代码。我在layoutAttributesForE

ios - 协议(protocol)前向声明的警告是什么?

我只是想避免警告(没有编译器抑制),但不想在我的文件中添加一些包含。这是我的代码:@protocolMyProto;//...Protocol*p=@protocol(MyProto);这是我收到的警告:@protocolisusingaforwardprotocoldeclarationofMyProto[-Wat-protocol] 最佳答案 使用协议(protocol)文字(@protocol)需要在编译时链接到协议(protocol),这需要编译器查看协议(protocol)的定义。我不明白您为什么反对“向我的文件添加一些包

ios - 协议(protocol)构造错误 Objective C

在DataProvider.h@protocolNewDataProviderProtocol-(void)fetchNewData;@end在SomeClass#importDataProvider.h@interfaceSomeClass:NSObject@end当我尝试使SomeClass符合NewDataProviderProtocol时,它说,没有名为“NewDataProviderProtocol”的类型或协议(protocol)这很奇怪,因为我已经导入了声明协议(protocol)的headerDataProvider.h。所以我在SomeClass的接口(interfa

ios - 实现 UIApplicationDelegate 协议(protocol)的窗口属性

假设我不使用Storyboard。在所有示例中,我看到应用程序委托(delegate)中的window属性在willFinishLaunchingWithOptions或didFinishLaunchingWithOptions中初始化。为什么不在对象初始化步骤?我尝试这样做,一切似乎都很好。更新:更清楚。此代码是否包含任何隐藏问题?classMyAppDelegate:UIResponder,UIApplicationDelegate{varwindow:UIWindow?=UIWindow(frame:UIScreen.mainScreen().bounds)funcapplica

ios - Swift 可选协议(protocol)行为的不一致

来自.Net,我正在尝试学习Swift3/iOS并且对可选协议(protocol)成员的以下明显不一致行为感到困惑。我怀疑它与objc/swift词之间的杂耍有关,但实际上我在这里错过了什么?//Inplayground,givenbelow:@objcprotocolSomePtotocol{@objcoptionalfuncsomeMethod()}classSomeDelegate:NSObject,SomePtotocol{}classSomeController:NSObject{vardelegate:SomePtotocol=SomeDelegate()}//Thiswo

ios - ScrollView Autolayout 使用 Label 但不使用 Custom Control

我正在开发一个项目,该项目在UIScrollView中有一个自定义分段控件。我想使用自动布局来定位分段控件。我正在使用这个项目作为我的模型:https://github.com/honghaoz/UIScrollView-and-AutoLayoutimportUIKitclassViewController:UIViewController{letscrollView=UIScrollView()varscreenBounds:CGRect{returnUIScreen.main.bounds}overridevarpreferredStatusBarStyle:UIStatusBa

IOS/objective-C : UIActivityItemSource Protocol for customizing share messages with UIActivityViewController

Apple文档说您可以使用UIActivityItemSource协议(protocol)来自定义与UIActivityViewController共享的消息,以代替UIActivityItemProvider对象:UIActivityItemSourceYoucanusethisprotocolinsituationswhereyouwanttoprovidethedatafromoneofyourapp’sexistingobjectsinsteadofcreatingaseparateUIActivityItemProviderobject.我已经采用了这个协议(protocol

ios - Swift 4.1 数组协议(protocol)一致性

我们刚刚切换到swift4.1,我们在数组的类型一致性方面遇到了一些困难。这是旧方法:publictypealiasXDRCodable=XDREncodable&XDRDecodablepublicprotocolXDREncodable:Encodable{funcxdrEncode(toencoder:XDREncoder)throws}publicprotocolXDRDecodable:Decodable{init(fromBinarydecoder:XDRDecoder)throwsinit(fromBinarydecoder:XDRDecoder,count:Int)th