UIKit 1 / 1.5. О создании приложений


Видео


− Ты чего? Что с тобой? – Саша подбежал к Оле.
− Нога. Я не поняла, что происходит, хотела помочь… я не знала…

На ноге у нее была странная рана. Как будто порез, но покрытый странной зеленой жижей. Она пульсировала и светилась.
− О господи, что это? Больно? Давай помогу. У нас есть аптечка, − Саша попытался поднять ее, но она заплакала и оттолкнула его.
− Олечка, милая, успокойся, мы все вылечим, не переживай, − Саша побежал к кораблю, залез в него и отыскав аптечку, вернулся. Обработав рану, он перемотал ногу. - Ну−ка, вставай. - Оля тяжело поднялась.
− Давайте лучше поищем еду. Так как здесь есть кислород, значит, что−то живое тоже должно быть. − Коля резко встал и пошел куда−то.
− Ты предлагаешь жрать что−то непонятное неизвестно где? − Аня побежала за ним.
− Когда оторвался дизельный отсек, с ним вместе ушли и наши запасы, так что вы как хотите, а я не хочу умереть голодной смертью. С новым годом.
− Разделимся. Мы с Олей останемся здесь, а вы идите искать еду. У вас есть навигаторы, так что найдете нас легко. Главное, не садитесь в машину к незнакомцам, − ухмыльнулся Саша.


Веселье - один из самых важных и недооцениваемых ингредиентов любого рискованного дела. Если Вы не испытываете веселья, то возможно пришло время отбросить это в сторону и заняться чем-то иным.

Ричард Брэнсон

В этом уроке


Виды

Представления часто бывают вложенными.

Представление, содержащееся в другом представлении, называется дочерним.

Представление, которое содержит одно или несколько других представлений называется родительским.


Как планируется приложение?

Многие приложения начинаются с простой идеи, которая выражается одним предложением. Подумайте о приложениях, которые используете каждый день. Они начинались с крайне простых и лаконичных идей:

В роли разработчика Вы должны научиться выражать идею своего приложения одним простым переложением и из него создавать план по реализации.

В этом уроке мы создадим приложение, основная цель которого - представить Вас. Сперва постарайтесь вспомнить своё имя. Тяжело с пятничного похмелья? И нам тоже не просто! Поэтому Анна записала нам несколько вопросов, которые помогут собрать достаточно информации для приложения:

Информация в создаваемом приложении будет постоянной и не будет меняться. Такие данные называются статичными в программировании. В будущих приложениях мы будем работать и с изменяемыми данными (они называются динамическими). На самом деле мы работали с такими данными, когда изменяли текст на кнопке её нажатием.

Необязательно сначала вносить свои данные в приложение: начните с их разметки в Pages/KeyNote или другом редакторе.


Создаём новый проект

Создайте новый проект с названием ILoveMyself. Шаблон выберите тот же, что и для первого приложения.

Добавьте на форму объект типа Label с Вашим именем, объект ImageView для Вашей будущей фотографии и объект типа Label для рассказа о себе.
Если нечего написать о себе воспользуйтесь нашими Абсолютно Незаметными Рекламными Материалами (АНРМ тм):

Попробуйте поиграться со шрифтами, как это делают настоящие дизайнеры:

  1. Для этого нажмите по кнопке T в свойстве Font у лейбла:
  1. В открывшемся окне в поле Font выберите Custom вместо System - System, чтобы иметь возможность изменить всё под себя.
  2. В поле Family выберите предпочитаемое семейство шрифтов - рекомендуем обратить внимание на Helvetica и её потомков, а также Avenir.
  3. В поле Style - выберите стиль шрифта (например, жирный или тёмный - набор вариантов зависит от семейства).
  4. Увеличьте размер шрифта. Текст, вероятно, не вместится в верхний лейбл. Чтобы растянуть вид по содержимому контента введите комбинацию клавиш Cmd + =.

И нас ждёт ещё один неприятный сюрприз - по-умолчанию лейбл не отображает больше, чем одну строку. А наш текст не вмещается в него. В инспекторе атрибутов Вы можете увеличить свойство Lines, что даст влезть в него большему числу строк. Однако есть способ попроще: задайте значение 0, что даст лейблу возможность автоматически менять количество входящих в него строк.
Программно с этим свойством корреспондирует свойство numberOfLines.

Теперь добавим картинку в приложение: если у Вас её ещё нет, то просто сделайте себяшку. Вы прекрасны!
Затем откройте файл Assets.xcassets.

Вернитесь в раскадровку и выберите объект UIImageView, добавленный на холст:

В инспекторе атрибутов задайте свойство Image данному объекту - Вам будут предложены различные изображения.
Заметьте, объект типа UIImageView - лишь представление для картинки, а не сама картинка.


Варианты отображения и новые проблемы

UIImageView лишь задаёт границы для объекта-картинки, в которых она может, но не обязана находиться.

Есть несколько режимов отображения контента:

За это отвечает свойство Content mode:

Программно это свойство contentMode.