Форум программистов, компьютерный форум, киберфорум
Наши страницы
Objective-C
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/10: Рейтинг темы: голосов - 10, средняя оценка - 4.60
xdozorx
15 / 16 / 1
Регистрация: 13.12.2009
Сообщений: 138
Записей в блоге: 1
#1

Создание таблицы

30.12.2011, 13:39. Просмотров 1794. Ответов 1
Метки нет (Все метки)

Создаю проект View based Application. Intarface Builder не использую. Вот файлы с проекта

TimetableAppDelegate.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//
//  TimetableAppDelegate.h
//  Timetable
//
//  Created by user on 29.12.11.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//
 
#import <UIKit/UIKit.h>
 
//@class TimetableViewController;
@class UINavigationController;
 
@interface TimetableAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
   // TimetableViewController *viewController;
    UINavigationController *ncMain;
}
 
@property (nonatomic, retain) IBOutlet UIWindow *window;
//@property (nonatomic, retain) TimetableViewController *viewController;
 
@end
TimetableAppDelegate.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
//
//  TimetableAppDelegate.m
//  Timetable
//
//  Created by user on 29.12.11.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//
 
#import "TimetableAppDelegate.h"
#import "TimetableViewController.h"
 
@implementation TimetableAppDelegate
 
@synthesize window;
//@synthesize viewController;
 
#pragma mark -
#pragma mark Application lifecycle
 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
    
    window =[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen]applicationFrame]];
    //viewController=[[TimetableViewController alloc] init];
    TimetableViewController *mainVC=[[[TimetableViewController alloc]init]autorelease];
    ncMain=[[UINavigationController alloc] initWithRootViewController:mainVC];
    ncMain.navigationBarHidden=YES;
    [window addSubview:ncMain.view];
    
    //[self.window addSubview:viewController.view];
    [self.window makeKeyAndVisible];
    //[self createChacheDirectories];
    return YES;
}
 
 
- (void)applicationWillResignActive:(UIApplication *)application {
    /*
     Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
     Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
     */
}
 
 
- (void)applicationDidEnterBackground:(UIApplication *)application {
    /*
     Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 
     If your application supports background execution, called instead of applicationWillTerminate: when the user quits.
     */
}
 
 
- (void)applicationWillEnterForeground:(UIApplication *)application {
    /*
     Called as part of  transition from the background to the inactive state: here you can undo many of the changes made on entering the background.
     */
}
 
 
- (void)applicationDidBecomeActive:(UIApplication *)application {
    /*
     Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
     */
    //if(autoupdate) needToUpdate=YES;
    //else needToUpdate=NO;
}
 
 
- (void)applicationWillTerminate:(UIApplication *)application {
    /*
     Called when the application is about to terminate.
     See also applicationDidEnterBackground:.
     */
}
 
 
#pragma mark -
#pragma mark Memory management
 
- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application {
    /*
     Free up as much memory as possible by purging cached data objects that can be recreated (or reloaded from disk) later.
     */
}
 
 
- (void)dealloc {
    [ncMain release];
 // [viewController release];
    [window release];
    [super dealloc];
}
 
 
@end
TimetableViewController.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//
//  TimetableViewController.h
//  Timetable
//
//  Created by user on 29.12.11.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//
 
#import <UIKit/UIKit.h>
 
@interface TimetableViewController : UIViewController {
    UITableView *tableView;
    NSArray *menu;
    NSArray *menuIcons;
    UILabel *update;
    UILabel *total;
}
 
@end
TimetableViewController.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
//
//  TimetableViewController.m
//  Timetable
//
//  Created by user on 29.12.11.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//
 
#import "TimetableViewController.h"
 
@implementation TimetableViewController
 
 
/*
// The designated initializer. Override to perform setup that is required before the view is loaded.
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}
*/
 
 
// Implement loadView to create a view hierarchy programmatically, without using a nib.
- (void)loadView {
//  self.view=[[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    self.view=[[UIView alloc] initWithFrame:CGRectMake(0,0,320,460)];
    self.view.backgroundColor=[UIColor whiteColor];
    menu=[[NSArray arrayWithObjects:NSLocalizedString(@"UFO",@""),
           NSLocalizedString(@"Ghosts",@""),
           NSLocalizedString(@"Monsters",@""),
           NSLocalizedString(@"Abnormail",@""),
           nil] retain];
 
           [self setupTableView];
           //[self.view addSubview:[self makeEditButton]];
    //[self.view addSubview:[self makeAddButton]];
    //[self tableView];
    
    //  [self.view addSubview:[self makeTable]];
}
-(UIButton *) makeEditButton
{
    CGRect frame=CGRectMake(265, 5,44,29);
    UIButton *button=[UIButton buttonWithType:UIButtonTypeRoundedRect];
    button.frame=frame;
    [button setBackgroundImage:[UIImage imageNamed:@"edit.png"] forState:UIControlStateNormal];
    return button;
}
-(UIButton *) makeAddButton
{
    CGRect frame=CGRectMake(5, 5,44,29);
    UIButton *button=[UIButton buttonWithType:UIButtonTypeRoundedRect];
    button.frame=frame;
    [button setBackgroundImage:[UIImage imageNamed:@"add.png"] forState:UIControlStateNormal];
    return button;
}
-(void) setupTableView
{
    tableView=[[UITableView alloc] initWithFrame:CGRectMake(0,10,320,310) style:UITableViewStyleGrouped];
    tableView.backgroundColor =[UIColor clearColor];
    tableView.scrollEnabled=NO;
    tableView.delegate=self;
    tableView.dataSource=self;
    tableView.separatorColor=[UIColor clearColor];
    tableView.showsVerticalScrollIndicator=NO;
    tableView.separatorStyle=UITableViewCellSeparatorStyleNone;
    tableView.sectionFooterHeight= 4.0;
    [self.view addSubview:tableView];
}   /*
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
*/
 
- (void)didReceiveMemoryWarning {
    // Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];
    
    // Release any cached data, images, etc that aren't in use.
}
 
 
 
- (void)dealloc {
    [tableView release];
    [menu release];
    [super dealloc];
}
 
@end
Ошиби не выдает. Приложение запускается, нечего не показывает и через несколько некунд закрывается. Подскажите кто знает как правильно в моем случае вывести таблицу
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.12.2011, 13:39
Ответы с готовыми решениями:

Создание таблицы квадратов первых десяти чисел, а также распечатка этой таблицы на принтере
Условие: разработайте программу, которая создает таблицу квадратов первых...

Создание временной таблицы,где ее название-переменная,названия столбцов-поля другой таблицы ..
Помогите,пож-ста,справиться со следующей проблемой. Есть главная таблица с...

Создание таблицы в документе MS Word из таблицы Excell
Приветствую! Нужна Ваша помощь! Появилась необходимость вставить таблицу word ...

Создание новой таблицы из значений имеющейся таблицы
Здравствуйте! Подскажите мне, пожалуйста. Есть большая таблица с данными...

Создание пустой таблицы со структурой таблицы-шаблона
В базе SQL Server Compact имеется таблица без записей - что-то вроде шаблона....

1
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
07.01.2012, 21:20 #2
Вам бы еще посоветовать в таких случаях ошибку из дебагера писать.
Сразу видно следующее:
C
1
2
tableView.delegate=self;
tableView.dataSource=self;
Нет делегатовских методов, которые @required, поэтому упадет по unrecognized selector, на выяснении сколько же cell'ов нужно показывать.

Далее:
Смотря на
Цитата Сообщение от xdozorx Посмотреть сообщение
Intarface Builder не использую.
и исходники,
видно то, что вы используете <4.2 Xcode, значит вам, вероятнее всего, нужно будет подправить main.m файл, дабы запустить ваш AppDelegate RunLoop, если вы конечно же отключили Ваш nib файл, в котором была подвязка на AppDelegate класс.
Вероятнее всего нужно будет подменить строчку в main.m на:
C
1
int retVal = UIApplicationMain(argc, argv, nil, @"TimetableAppDelegate");
Если все пройдет гладко, будет падать по причине, описанной выше(Про делегирование).
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2012, 21:20

Создание формулы и последующее заполнение таблицы, избежание повторов информации, создание интерфейса
Не люблю просить о помощи, но, к сожалению, сроки поджимают и не позволяют...

Создание таблицы, где часть полей берётся из другой таблицы, а часть создаётся заново
Здравствйте,как создать таблицу где часть полей берётся из другой ,а часть...

Создание запроса на создание таблицы
есть база данных, в которой имеется одна таблица, необходимо создать запрос на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru