Я думаю, это очень распространенный вопрос для всех нас. Я занимаюсь часами учебы, но, возможно, потому, что я слишком младший, я до сих пор не знаю, как это решить. Я надеюсь, что кто-то сможет помочь.Переключение просмотров, живые байты продолжают расти
Вот сценарий:
- У меня есть 3 Вид контроллеров на раскадровке (ни один из них не вернулись с кодом на данный момент)
- 1-ый (главная) имеет 7
UIbuttons
, 4UIlabels
, и 3UIImages
, ни один из них еще не подключен к файлу h. - Я использую одну из кнопок для подключения к следующему виду (модальный) и создаю одну кнопку на втором представлении, чтобы подключиться к третьей, и, наконец, кнопку на виду 3 для подключения к главному виду.
Кажется очень простым. Однако, когда я запускаю его на инструментах/распределении, я вижу, что каждый раз, когда я возвращаюсь из представления 3 в основной вид, я вижу большой прыжок на живые байты (раунд 1 МБ). (Recap: кода «H» или «M» пока нет). Затем я попытался удалить некоторые кнопки и метки и повторить выделение. Я вижу, что живые байты все еще увеличиваются, но с меньшим количеством ... ясно, что существует неограниченная проблема роста памяти (я думаю).
Итак, вот мой вопрос: как мы можем решить это? и почему они будут выделять столько ресурсов кнопкам, этикеткам и изображениям, даже если на них ничего нет?
Большое спасибо!
PS. нет утечки, найденной в отчете, и они растут на постоянной сумме ...
Я пробовал это на кнопке для основного вида, чтобы перейти к просмотру 2, но когда я вернусь снова, он просто может вернуться к главный на View3 ...
[self dismissViewControllerAnimated:YES completion:nil];
mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:Nil];
UIViewController *go2= [mainStoryboard instantiateViewControllerWithIdentifier:@"view2"];
[self presentViewController:go2 animated:YES completion:nil];
Thx Rdelmar! это означает использование чего-то вроде UIViewController * goback = [mainStoryboard instantiateViewControllerWithIdentifier: @ "main_one"]; [self presentViewController: goback animated: YES завершение: nil]; также создаст новый VC? – Summerhei
Я попытался использовать shutViewControllerAnimated: завершение: но все это просто приостановлено и не может идти никуда =. = – Summerhei
@Summerhei, да, это создает новый экземпляр. – rdelmar