小编vir*_*ral的帖子

用于获取URL的文件名的函数

我有一些源代码来获取url的文件名

例如:

http://www.google.com/a.pdf

我希望得到一个.pdf

因为我可以得到的加入2个NSStrings的方法是'appendString',它只用于在右侧添加字符串,所以我打算从字符串' http://www.google.com的右侧逐个检查每个字符串/a.pdf ',当它到达char'/'时,停止检查,返回字符串fdp.a,之后我将fdp.a更改为a.pdf

源代码如下

-(NSMutableString *) getSubStringAfterH :  originalString:(NSString *)s0 
{
    NSInteger i,l;
    l=[s0 length];
    NSMutableString *h=[[NSMutableString alloc] init];

    NSMutableString *ttt=[[NSMutableString alloc] init  ];
     for(i=l-1;i>=0;i--) //check each char one by one from the right side of string 'http://www.google.com/a.pdf', when it reach at the char '/', stop
    {
        ttt=[s0 substringWithRange:NSMakeRange(i, 1)];
         if([ttt isEqualToString:@"/"]) 
        { 
            break;
        }
            else
        {
             [h appendString:ttt];
        } 
     }
     [ttt release];
     NSMutableString *h1=[[[NSMutableString alloc] initWithFormat:@""] autorelease];

    for (i=[h length]-1;i>=0;i--)
    {
            NSMutableString *t1=[[NSMutableString …
Run Code Online (Sandbox Code Playgroud)

iphone

47
推荐指数
4
解决办法
4万
查看次数

int,NSInteger和NSUInteger之间的区别

是什么之间的主要区别int,NSIntegerNSUInteger在Objective-C?

哪一个更适合在应用程序中使用?为什么?

iphone int objective-c nsinteger nsuinteger

36
推荐指数
2
解决办法
2万
查看次数

全局使用MBProgressHUD +使其成为单身人士

在我的项目中,每个用户交互事件都进行网络调用(即TCP,而不是HTTP).我需要活动指示灯是全球性的,以表明从随机UIViewController隐藏NetworkActivityManager类(自定义的类来处理网络活动,这是没有的UIViewController或UIView的子类).

在搜索网络后,我发现MBProgressHUD用于同一目的,但我无法找到一个关于如何在全球范围内使用它的示例.(通过说全局我的意思是MBProgressHUD的单个对象和类方法来显示和隐藏它.)

以下是我的尝试,但是,失败了:在AppDelegate.h中:

@property (nonatomic, retain) MBProgressHUD *hud;

AppDelegate.m中:

@synthesize hud;

在一些随机的UIViewController对象中:

appDelegate.hud = [MBProgressHUD showHUDAddedTo:appDelegate.navigationController.topViewController.view animated:YES];
appDelegate.hud.labelText = @"This will take some time.";
Run Code Online (Sandbox Code Playgroud)

在隐藏它的同时,从NetworkActivityManagerClass:

[MBProgressHUD hideHUDForView:appDelegate.navigationController.topViewController.view animated:YES];
Run Code Online (Sandbox Code Playgroud)

这使得项目在一段时间后崩溃(由于内存问题.)我在我的项目中使用ARC,而且,我正在使用ARC版本的MBProgressHUD.

我错过了什么吗?

重要问题:

我可以让MBProgressHUD像UIAlertView 一样工作吗?(说我的意思是独立于UIView 的MBProgressHUD的实现- 它用于showHUDAddedTo:呈现自己)?

请注意:在上面隐藏MBProgressHUD的代码中,View可能会改变显示MBProgressHUD时的状态.

任何帮助非常感谢.

iphone singleton ios mbprogresshud

23
推荐指数
2
解决办法
2万
查看次数


目标C.奇怪的语法

对于我来说,在Objective C中声明一个方法,我发现了一个奇怪的方法.

.h文件中的方法声明:

-(void)methodName:(NSString *)str, int i;
Run Code Online (Sandbox Code Playgroud)

.m文件中的方法实现:

-(void)methodName:(NSString *)str, int i
{
     NSLog(@"str = %@, int = %d", str, i);
}
Run Code Online (Sandbox Code Playgroud)

我可以像这样调用这个方法:

[self methodName:@"stringExample", 99];
Run Code Online (Sandbox Code Playgroud)

它会工作正常.

我的问题是我应该何时使用这种语法.它和通常的声明有什么区别吗?

objective-c

9
推荐指数
1
解决办法
376
查看次数

目标C中的静态方法(不是类方法)

在阅读这个问题并接受问题的答案时,我无法区分这两种方法.实际上通过阅读示例得到了重点,但后来,我无法编写自己的静态方法.

我尝试在目标c静态方法中使用googling 创建静态方法

这让我回到了这个这个问题的链接.但是,这里的例子是CLASS方法,根据问题的第一个链接.这让我感到困惑.

这里的任何人都可以告诉我如何创建一个不是类方法静态方法

任何关于此的亮点都将受到赞赏.

static-methods objective-c class-method

8
推荐指数
1
解决办法
8389
查看次数

Facebook浏览器登录重定向到应用程序后,处理程序不会被调用

我在我的应用程序中使用Facebook SDK v4.8.0 for iOS登录Facebook.(iPhone OS版本9.3)

以下是一些相关的集成代码:

AppDelegate.swift

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
    return true
}

func applicationDidBecomeActive(application: UIApplication) {
    FBSDKAppEvents.activateApp()
}

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {    
        return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
}

func application(application: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool {
        return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url,
                                                                     sourceApplication: "UIApplicationOpenURLOptionsSourceApplicationKey",
                                                                     annotation: "UIApplicationOpenURLOptionsAnnotationKey")
}
Run Code Online (Sandbox Code Playgroud)

Login.Swift

@IBAction func btnFacebook(sender: UIButton) {

    self.loginToFacebookWithSuccess({ …
Run Code Online (Sandbox Code Playgroud)

redirect facebook ios facebook-ios-sdk swift

8
推荐指数
1
解决办法
1380
查看次数

将电话号码和电子邮件添加到地址簿会导致iPhoneApp崩溃

ABRecordSetValue(person, kABPersonPhoneProperty, (__bridge CFTypeRef)phoneNum, nil);
ABRecordSetValue(person, kABPersonEmailProperty, (__bridge CFTypeRef)eMailId, nil);
Run Code Online (Sandbox Code Playgroud)

注释这两行可以提供正确的输出(将条目保存到AdressBook,无需电子邮件和电话输入).但是,在执行过程中它会失败并导致程序崩溃.

Vars的价值是:

phoneNum:000-000-0000

eMailId:AbcdefghIjklm@qwertyuiopasdfghjk.com

错误类型:EXC_BAD_ACCESS

任何的想法?或者还需要更多信息?

iphone objective-c abaddressbook ios

6
推荐指数
1
解决办法
5134
查看次数

什么时候应该传递"T*const&"类型的指针?

T*&当我打算更改函数内的指向值时,我会传递指针:

void foo(char *&p)
{
  p = (b == true)? new char[10] : 0;
}
Run Code Online (Sandbox Code Playgroud)

但我无法得到T* const&指针类型的用例(因为该指针不可更改)?我的意思是为什么我不能简单地通过T* const

void foo(char* const &p);  // p is not changeable
void foo(char* const p);   // p is not changeable
Run Code Online (Sandbox Code Playgroud)

c++ pointers const pass-by-reference

4
推荐指数
1
解决办法
454
查看次数

NSApplication与UIApplication

UIApplication和之间的区别是什么NSApplication?(因为我没有从他们的文档中得到它...)
有人能给我一些有用的链接来详细解释他们的差异吗?
此外,AppNameAppDelegate.m(和.h)在iOS应用程序中的关键作用是什么?
谢谢.

uiapplication nsapplication ios

4
推荐指数
1
解决办法
2254
查看次数