Я пытаюсь реализовать свое табличное представление, которое я сделал ранее, в новом приложении на основе вкладок, которое я только что создал, и все собирать и компилировать, но когда я выбираю вкладку для моего импортированного табличного представления, происходит сбой сследующая ошибка:
[Session started at 2011-04-23 00:55:14 +0200.]
2011-04-23 00:55:16.361 EXOtab[1123:207] -[EXOtabAppDelegate larms]: unrecognized selector sent to instance 0x5f2b4e0
В моем файле заголовка определен объектный ларм для анализа данных для моего просмотра таблицы.
#import <UIKit/UIKit.h>
@interface XMLAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
UINavigationController *navigationController;
NSMutableArray *larms;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;
@property (nonatomic, retain) NSMutableArray *larms;
- (void)loadXML;
@end
Я не знаю, пропускаю ли я какой-либо из моихфайлы заголовков из модели данных моего tableview или если у меня плохие ссылки при вызове.Конечно, он работает нормально, если я использую его снаружи как приложение для просмотра таблиц, но не в своем приложении панели вкладок.
мои ViewControllers:
#import "EXOtabAppDelegate.h"
#import "EXOtabViewController.h"
#import "users.h"
#import "info.h"
#import "RootViewController.h" // My Tableview
@implementation EXOtabAppDelegate
@synthesize window;
@synthesize viewController;
#pragma mark -
#pragma mark Application lifecycle
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UITabBarController *tabBarController = [[UITabBarController alloc] init];
UIViewController *vc1 = [[info alloc] init];
UIViewController *vc2 = [[users alloc] init];
UIViewController *vc3 = [[RootViewController alloc] init];
NSArray *viewControllers = [NSArray arrayWithObjects:vc1, vc2, vc3, nil];
[vc1 release];
[vc2 release];
[vc3 release];
[tabBarController setViewControllers:viewControllers];
[window setRootViewController:tabBarController];
[tabBarController release];
[window makeKeyAndVisible];
return YES;
}
есть идеи?И дайте мне знать, если вам нужно больше увидеть код
// reg: mandelmassa
У меня есть еще код, чтобы показать:
//RootViewController.m
- (void)viewDidLoad {
[super viewDidLoad];
if (_refreshHeaderView == nil) {
EGORefreshTableHeaderView *view = [[EGORefreshTableHeaderView alloc] initWithFrame:CGRectMake(0.0f, 0.0f - self.tableView.bounds.size.height, self.view.frame.size.width, self.tableView.bounds.size.height)];
view.delegate = self;
[self.tableView addSubview:view];
_refreshHeaderView = view;
[view release];
}
// update the last update date
[_refreshHeaderView refreshLastUpdatedDate];
//this is where the app crashes!
appDelegate = (XMLAppDelegate *)[[UIApplication sharedApplication] delegate];
self.title = @"Larm";
}
//RootViewController.h
#import <UIKit/UIKit.h>
#import "EGORefreshTableHeaderView.h"
@class XMLAppDelegate, LarmDetail;
@interface RootViewController : UITableViewController <EGORefreshTableHeaderDelegate, UITableViewDelegate, UITableViewDataSource>{
XMLAppDelegate *appDelegate;
LarmDetail *ldvController;
EGORefreshTableHeaderView *_refreshHeaderView;
BOOL _reloading;
}
- (void)reloadTableViewDataSource;
- (void)doneLoadingTableViewData;
@end
//XMLAppDelegate.h
#import <UIKit/UIKit.h>
@interface XMLAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
UINavigationController *navigationController;
NSMutableArray *larms;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;
@property (nonatomic, retain) NSMutableArray *larms;
- (void)loadXML;
@end
//XMLAppDelegate.m
#import "XMLAppDelegate.h"
#import "RootViewController.h"
#import "XMLParser.h"
@implementation XMLAppDelegate
@synthesize window;
@synthesize navigationController, larms;
-(void)applicationDidFinishLaunching:(UIApplication *)application {
[self loadXML]; //egen function för att ladda data
// Configure and show the window
[window addSubview:[navigationController view]];
[window makeKeyAndVisible];
}
- (void)loadXML{
NSURL *url = [[NSURL alloc] initWithString:@"http://192.168.1.90/EXOxml.php?nAlarms=2"];
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithContentsOfURL: url];
//Initialize the delegate.
XMLParser *parser = [[XMLParser alloc] initXMLParser];
//Set delegate
[xmlParser setDelegate:parser];
//Start parsing the XML file.
BOOL success = [xmlParser parse];
if(success)
NSLog(@"Data loaded");
else
NSLog(@"Data fail!!!");
}
- (void)applicationWillTerminate:(UIApplication *)application {
// Save data if appropriate
}
- (void)dealloc {
[larms release];
[navigationController release];
[window release];
[super dealloc];
}
@end
Может кто-нибудь1 понять, почемумое приложение вызывает ошибку?
reg Mandel
(XMLAppdelegate)
#import <UIKit/UIKit.h>
@interface XMLAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
UINavigationController *navigationController;
NSMutableArray *larms;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;
@property (nonatomic, retain) NSMutableArray *larms;
- (void)loadXML;
@end
(XMLAppDelegate.m)
#import "XMLAppDelegate.h"
#import "RootViewController.h"
#import "XMLParser.h"
@implementation XMLAppDelegate
@synthesize window;
@synthesize navigationController, larms;
-(void)applicationDidFinishLaunching:(UIApplication *)application {
[self loadXML]; own function to load data
// Configure and show the window
[window addSubview:[navigationController view]];
[window makeKeyAndVisible];
}
- (void)loadXML{
NSURL *url = [[NSURL alloc] initWithString:@"http://xxx.xxx.xxx.xxx/somefile.php?nAlarms=2"];
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithContentsOfURL: url];
//Initialize the delegate.
XMLParser *parser = [[XMLParser alloc] initXMLParser];
//Set delegate
[xmlParser setDelegate:parser];
//Start parsing the XML file.
BOOL success = [xmlParser parse];
if(success)
NSLog(@"No Errors");
else
NSLog(@"Error Error Error!!!");
}
- (void)applicationWillTerminate:(UIApplication *)application {
// Save data if appropriate
}
- (void)dealloc {
[larms release];
[navigationController release];
[window release];
[super dealloc];
}
@end