小编izz*_*zzy的帖子

在Objective-C中使用全局变量

首先,我尝试了几乎所有在stackoverflow中给出的解决方案,但我没有成功实现全局变量,我甚至做了一步一步的教程,但我仍然得到相同的错误.

继承人的问题:

我有一个包含多个视图的程序,我想在所有视图上使用变量,所以我使用了全局变量,

我有:

GlobalVars.h

#import <UIKit/UIKit.h>
extern NSArray *truckBoxes;
extern NSArray *farmerlist;
extern NSString *farmerCardNumber;

extern NSString *fName;

@interface GlobalVars : NSObject
{
}

@end
Run Code Online (Sandbox Code Playgroud)

GlobalVars.m

#import "GlobalVars.h"

NSArray *farmerlist;
NSArray *truckBoxes;
NSString *farmerCardNumber;
NSString *fName;
@implementation GlobalVars
{

}
@end
Run Code Online (Sandbox Code Playgroud)

我将该文件包含在类中(连接到视图控制器):在我添加的.h文件下 #import "GlobalVars.h

我可以访问farmerlisttruckBoxes从应用程序,但无法访问fNamefarmerCardNumber.

我可以写farmerCardNumber同一个视图并从中读取,但如果我稍后尝试从另一个视图访问它,我会得到

2013-10-26 11:11:45.612 C3Cms[10427:70b] Branch : 11558
2013-10-26 11:11:59.459 C3Cms[10427:70b] -[__NSArrayM length]: unrecognized selector sent to instance 0x8b7fbc0
2013-10-26 11:11:59.463 C3Cms[10427:70b] *** Terminating app …
Run Code Online (Sandbox Code Playgroud)

objective-c ios unrecognized-selector

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

sendAsynchronousRequest使UI冻结

downloadImages是一个按钮,每当我按下它时,一个微调器应该开始滚动,异步请求应该ping谷歌(以确保有连接)并且在收到响应后,我开始同步下载图像.

不知怎的,微调器不会去,似乎请求是同步而不是异步.

- (IBAction)downloadImages:(id)sender {

    NSString *ping=@"http://www.google.com/";

    GlobalVars *globals = [GlobalVars sharedInstance];
    [self startSpinner:@"Please Wait."];
    NSURL *url = [[NSURL alloc] initWithString:ping];
    NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:5.0];
    [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
        if (data) {
            for(int i=globals.farmerList.count-1; i>=0;i--)
            {
            //Definitions
            NSString * documentsDirectoryPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

            //Get Image From URL
                NSString *urlString = [NSString stringWithFormat:@"https://myurl.com/%@",[[globals.farmerList objectAtIndex:i] objectForKey:@"Image"]];
            UIImage * imageFromURL = [self getImageFromURL:urlString];



            //Save Image to Directory
            [self saveImage:imageFromURL withFileName:[[globals.farmerList objectAtIndex:i] …
Run Code Online (Sandbox Code Playgroud)

xcode asynchronous uiactivityindicatorview ios xcode5

5
推荐指数
2
解决办法
1212
查看次数