Я нашел несколько сообщений в Интернете, в которых сообщалось, что я могу получить доступ к своему объекту делегата приложения из любого контроллера представления с помощью следующего вызова:
[[UIApplication sharedApplicaton] delegate];
(Например: данные между представлениями UIApplication , iOS - вызов метода делегирования приложения из ViewController )
Однако, когда я включаю эту строку в функцию в одном из моих контроллеров представления, приложение вылетает.
Это первое приложение, которое я пишу, и я не вижу разницы между моим кодом и тем, как другие посты сказали, что я должен использовать этот вызов sharedApplication. Для полноты ниже приведена выдержка из моего делегата приложения и контроллера представления.
FirstViewController.h:
@class wStreamAppDelegate;
#define URL_ADDRESS @"http://google.com"
@interface FirstViewController : UIViewController <UIWebViewDelegate>{
IBOutlet UIWebView * webView;
wStreamAppDelegate* appDelegate;
}
@property(nonatomic,retain) wStreamAppDelegate* appDelegate;
@property(nonatomic,retain) IBOutlet UIWebView* webView;
FirstViewController.m:
#import "FirstViewController.h"
#import "wStreamAppDelegate.h"
@implementation FirstViewController
@synthesize webView,appDelegate;
@class wStreamAppDelegate;
- (void)viewDidLoad {
[super viewDidLoad];
NSString* urlAddress = URL_ADDRESS;
NSURL* url = [NSURL URLWithString:urlAddress];
NSURLRequest * requestObj = [NSURLRequest requestWithURL:url];
[webView loadRequest:requestObj];
self.appDelegate = (wStreamAppDelegate*)[[UIApplication sharedApplicaton] delegate];
//This doesn't work either
// wStreamAppDelegate *appDelegate= (wStreamAppDelegate*)[[UIApplication sharedApplicaton] delegate];
wStreamAppDelegate.h:
@interface wStreamAppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate> {
UIWindow *window;
UITabBarController *tabBarController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UITabBarController *tabBarController;
@end
Если у кого-то есть мысли о том, что может пойти не так, общие советы по устранению подобных проблем или советы, я бы очень признателен. Спасибо.