Nodemon fs.writeFileSync Crash

Это один из моих самых любимых трюков.

UIView *topview = [[[UIView alloc] initWithFrame:CGRectMake(0,-480,320,480)] autorelease];
topview.backgroundColor = [UIColor colorWithRed:226.0/255.0 green:231.0/255.0 blue:238.0/255.0 alpha:1];

[self.tableView addSubview:topview];

В основном вы создаете большой вид размера экрана и помещаете его «выше» в область содержимого. Вы никогда не сможете прокручивать его мимо.

И не беспокойтесь о влиянии UIView на память на 320x480 пикселей, он не будет потреблять значительную память, потому что у CALayer нет любое содержательное содержание.

ПРИМЕЧАНИЕ. Почему этот ответ имеет значение, когда «принятый» ответ намного проще? Почему бы просто не установить backgroundView в виде таблицы? Это связано с тем, что в случае приложения «Контакты», как показано в исходном вопросе, область «выше» в виде таблицы имеет другой цвет фона (голубой), чем область «ниже» в виде таблицы (белый). Этот метод позволяет вам иметь два разных цвета над и под табличным представлением, которые не могут быть выполнены простым фоном.

EDIT 1/2018: Как сказал Том в комментариях, этот ответ довольно старый и предполагает, что все устройства iOS имеют одинаковый размер экрана (кажется сумасшедшим, но это было в 2009 году, когда я ответил на это). Концепция, представленная здесь, по-прежнему работает, но вы должны использовать UIScreen.main.bounds для определения размера экрана actual , или вы можете попасть в некоторые причудливые макеты (рекомендуется приветствовать). Я не рекомендую использовать tableView.bounds как в другом ответе, потому что, как правило, в viewDidLoad размер ваших представлений не обязательно такой размер, который они будут после того, как контроллер изменяет их размеры. Иногда они начинаются как 0x0!

0
задан HDCerberus 30 December 2018 в 14:41
поделиться