какие компоненты макета использовались для Pocket Weather AU? - PullRequest
0 голосов
/ 21 февраля 2011

Может ли кто-нибудь прокомментировать, какие компоненты IOS для навигации / компоновки и т. Д. Использовались для приложения iPhone «Pocket Weather AU»? Это выглядит довольно хорошо, как это изложено. Я догадываюсь:

Контроллер навигации

  • 1-й уровень - содержит табличное представление с панелью инструментов внизу
  • 2-й уровень - Детальный просмотр - возможно, пользовательская страница полностью
  • Затем о кнопках «+» и «сетка» вверху на главной странице - надеюсь, это просто кнопки, которые можно вставить в стандартный контроллер навигации, которые затем могут вызвать отдельное представление

Главный экран

enter image description here

Экран сведений

enter image description here

PS. Кроме того, при нажатии символа «+» он переходит к:

enter image description here

1 Ответ

2 голосов
/ 22 февраля 2011

Просто выглядит как настраиваемый UITableView в простом стиле в UINavigationController на первом экране.Каждая ячейка имеет прозрачное фоновое изображение, а весь табличный вид имеет фоновое изображение.Похоже, ячейки в стиле субтитров.Миниатюра погоды (солнце, облако и т. Д.) Представляет собой UIImageVIew, добавленный в качестве подпредставления для ячейки или, возможно, аксессуара для ячейки.Высокие / низкие температуры - это просто UILabels, добавленные в качестве подпредставлений в ячейку.

Кнопки сверху - это просто UIBarButtonItems (Добавить и Сетка).Они могут быть добавлены в viewDidLoad, например так:

self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addAction:)] autorelease];

UIToolBar добавляется как подпредставление, содержащее два UIBarButtonItems (Edit и Refresh).Существует также подпредставление UILabel в UIToolBar и, возможно, некоторое гибкое пространство для макета.

Второй экран - это настраиваемый контроллер представления.Я бы положил что-то подобное в .xib.

addAction будет выглядеть примерно так:

    FindLocationController *findLocationController = [[FindLocationController alloc] initWithStyle:UITableViewStylePlain];
findLocationController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
findLocationController.title = @"Find Location";

UINavigationController *findLocationNavController = [[UINavigationController alloc] initWithRootViewController:findLocationController];
[self.navigationController presentModalViewController:findLocationController animated:YES];

[findLocationController release];
[findLocationNavController release];
...