首先,我尝试了几乎所有在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
我可以访问farmerlist和truckBoxes从应用程序,但无法访问fName或farmerCardNumber.
我可以写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) 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)