У меня есть вид с UINavigationBar: AppDelegate:Добавить subview через initWithFrame. UINavigationBar размер
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
_homeScreen = [[PrepareScreen alloc] init];
self.mainViewController = [[MyViewController alloc] initWithScreenDef:[self.homeScreen projectHomeScreen] AndBounds:self.window.bounds];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:self.mainViewController];
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES;
И тогда у меня есть класс
MyViewController : UIView <UITableViewDataSource,UITableViewDelegate>
И в моем файле .h у меня есть:
- (void)viewDidLoad
{
[super viewDidLoad];
self.myTableView = [[UITableView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:self.myTableView];
}
После этого у меня есть неправильный он во весь экран. Я хочу, чтобы мой myTableView имел размер.height-49.0
Отличное решение. Благодаря! – Kuba
Только одно дополнение, вы можете создать свой вид таблицы в viewWillAppear :, пока вы не выполняете тяжелую операцию. Обычно используйте viewWillAppear для облегчения операций - в основном, при настройке геометрии. – graver
ОК, поэтому, когда я хочу поместить данные из моего класса моделей, это лучше сделать в viewDidLoad, и когда я пытаюсь изменить размер ячеек или менять цвет фона (например), я должен использовать viewWillAppear, не так ли? – Kuba