ios – 如何为使用uiviewcontroller的方法创建一个类

ios – 如何为使用uiviewcontroller的方法创建一个类,第1张

概述我在想如何为twitter或facebook或其他任何课程上课.所以我只需将该类导入到我的项目中,然后开始使用一个代码.例如.如果我使用twitter框架,那么我必须编写它的函数.我只是想通过导入它来创建一个可以用于我所有未来项目的功能. 例: 任何类别或任何东西: -(void)shareOnTwitter:(NSString *)text withUrl:(NSURL *)url withIm 我在想如何为twitter或facebook或其他任何课程上课.所以我只需将该类导入到我的项目中,然后开始使用一个代码.例如.如果我使用twitter框架,那么我必须编写它的函数.我只是想通过导入它来创建一个可以用于我所有未来项目的功能.
例:

任何类别或任何东西:

-(voID)shareOnTwitter:(Nsstring *)text withUrl:(NSURL *)url withImage:(UIImage *)image{   // ALL TWITTER Code HERE;}

在任何项目的主VIEwController中:

- (IBAction)socialBtn:(ID)sender{  [self shareOnTwitter:@"This is Text" withUrl:nil withImage:nil];}

更新:刚试过分类方式,但没有回复,任何想法我错了?:

UIVIEwController CustomMethods.h

#import <UIKit/UIKit.h>#import <Social/Social.h>@interface UIVIEwController (CustomMethods)-(voID)shareOnTwitter:(Nsstring *)text withUrl:(NSURL *)url withImage:(UIImage *)image;@end

UIVIEwController CustomMethods.m

#import "UIVIEwController+CustomMethods.h"@implementation UIVIEwController (CustomMethods)-(voID)shareOnTwitter:(Nsstring *)text withUrl:(NSURL *)url withImage:(UIImage *)image {    if ([SLComposeVIEwController isAvailableForServiceType:SLServiceTypeTwitter])    {        SLComposeVIEwController *tweetSheet = [SLComposeVIEwController composeVIEwControllerForServiceType:SLServiceTypeTwitter];        [tweetSheet setinitialText:text];        [tweetSheet addImage:image];        [tweetSheet addURL:url];        [self presentVIEwController:tweetSheet animated:YES completion:nil];    }    else    {        UIAlertVIEw *alertVIEw = [[UIAlertVIEw alloc]                                  initWithTitle:@"Sorry"                                  message:@"You can't Post a Status right Now,make sure your device has an internet connection and you have at least one Twitter account setup"                                  delegate:nil                                  cancelbuttonTitle:@"OK"                                  otherbuttonTitles:nil];        [alertVIEw show];    }}@end

mainVIEwController:

Nsstring *Title = [webVIEwOutlet stringByEvaluatingJavaScriptFromString:@"document.Title"];            NSURL *url = [[webVIEwOutlet request] URL];            [self shareOnTwitter:Title withUrl:url withImage:nil];
解决方法 我相信这是一个可以使用名为“CategorIEs”的Objective-C功能的实例.类别是已建立的类的扩展.例如,我们可以为UIVIEwController创建一个类别,它将为所有UIVIEwController类添加新方法.

为此,我们执行以下 *** 作:

制作.h文件来声明原型:

@interface UIVIEwController (categoryname) // EG. (Twitter)// PROTOTYPES... EG:-(voID)shareOnTwitter:(Nsstring *)text withUrl:(NSURL *)url withImage:(UIImage *)image;@end

以及实现它们的相应.m文件:

@implementation UIVIEwController (categoryname)// IMPLEMENTATIONS... EG:-(voID)shareOnTwitter:(Nsstring *)text withUrl:(NSURL *)url withImage:(UIImage *)image {    // Code...}@end

(请注意,在XCode中声明新文件时,它具有可以使用的“类别”模板.)

现在,无论何时导入.h文件,UIVIEwController作为一个类都将包含您扩展它的方法

Here’s一个关于我通过快速谷歌搜索找到的类别的教程.

总结

以上是内存溢出为你收集整理的ios – 如何为使用uiviewcontroller的方法创建一个类全部内容,希望文章能够帮你解决ios – 如何为使用uiviewcontroller的方法创建一个类所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1017653.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-23
下一篇2022-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存