− Ты чего? Что с тобой? – Саша подбежал к Оле.
− Нога. Я не поняла, что происходит, хотела помочь… я не знала…
На ноге у нее была странная рана. Как будто порез, но покрытый странной зеленой жижей. Она пульсировала и светилась.
− О господи, что это? Больно? Давай помогу. У нас есть аптечка, − Саша попытался поднять ее, но она заплакала и оттолкнула его.
− Олечка, милая, успокойся, мы все вылечим, не переживай, − Саша побежал к кораблю, залез в него и отыскав аптечку, вернулся. Обработав рану, он перемотал ногу. - Ну−ка, вставай. - Оля тяжело поднялась.
− Давайте лучше поищем еду. Так как здесь есть кислород, значит, что−то живое тоже должно быть. − Коля резко встал и пошел куда−то.
− Ты предлагаешь жрать что−то непонятное неизвестно где? − Аня побежала за ним.
− Когда оторвался дизельный отсек, с ним вместе ушли и наши запасы, так что вы как хотите, а я не хочу умереть голодной смертью. С новым годом.
− Разделимся. Мы с Олей останемся здесь, а вы идите искать еду. У вас есть навигаторы, так что найдете нас легко. Главное, не садитесь в машину к незнакомцам, − ухмыльнулся Саша.
Веселье - один из самых важных и недооцениваемых ингредиентов любого рискованного дела. Если Вы не испытываете веселья, то возможно пришло время отбросить это в сторону и заняться чем-то иным.
Представления часто бывают вложенными
.
Представление, содержащееся в другом представлении, называется дочерним
.
Представление, которое содержит одно или несколько других представлений называется родительским
.
Многие приложения начинаются с простой идеи, которая выражается одним предложением. Подумайте о приложениях, которые используете каждый день. Они начинались с крайне простых и лаконичных идей:
В роли разработчика Вы должны научиться выражать идею своего приложения одним простым переложением и из него создавать план по реализации.
В этом уроке мы создадим приложение, основная цель которого - представить Вас. Сперва постарайтесь вспомнить своё имя. Тяжело с пятничного похмелья? И нам тоже не просто! Поэтому Анна записала нам несколько вопросов, которые помогут собрать достаточно информации для приложения:
Информация в создаваемом приложении будет постоянной и не будет меняться. Такие данные называются статичными в программировании. В будущих приложениях мы будем работать и с изменяемыми данными (они называются динамическими). На самом деле мы работали с такими данными, когда изменяли текст на кнопке её нажатием.
Необязательно сначала вносить свои данные в приложение: начните с их разметки в Pages/KeyNote или другом редакторе.
Создайте новый проект с названием ILoveMyself
. Шаблон выберите тот же, что и для первого приложения.
Добавьте на форму объект типа Label
с Вашим именем, объект ImageView
для Вашей будущей фотографии и объект типа Label
для рассказа о себе.
Если нечего написать о себе воспользуйтесь нашими Абсолютно Незаметными Рекламными Материалами (АНРМ тм):
Попробуйте поиграться со шрифтами, как это делают настоящие дизайнеры:
T
в свойстве Font
у лейбла:Font
выберите Custom
вместо System - System
, чтобы иметь возможность изменить всё под себя.Family
выберите предпочитаемое семейство шрифтов - рекомендуем обратить внимание на Helvetica
и её потомков, а также Avenir
.Style
- выберите стиль шрифта (например, жирный или тёмный - набор вариантов зависит от семейства).И нас ждёт ещё один неприятный сюрприз - по-умолчанию лейбл не отображает больше, чем одну строку. А наш текст не вмещается в него. В инспекторе атрибутов Вы можете увеличить свойство Lines
, что даст влезть в него большему числу строк. Однако есть способ попроще: задайте значение 0
, что даст лейблу возможность автоматически менять количество входящих в него строк.
Программно с этим свойством корреспондирует свойство numberOfLines
.
Теперь добавим картинку в приложение: если у Вас её ещё нет, то просто сделайте себяшку. Вы прекрасны!
Затем откройте файл Assets.xcassets
.
Вернитесь в раскадровку и выберите объект UIImageView
, добавленный на холст:
В инспекторе атрибутов задайте свойство Image данному объекту - Вам будут предложены различные изображения.
Заметьте, объект типа UIImageView
- лишь представление для картинки, а не сама картинка.
UIImageView
лишь задаёт границы для объекта-картинки, в которых она может, но не обязана находиться.
Есть несколько режимов отображения контента:
Scale to Fill
- картинка растягивается до границ представленияAspect Fit
- картинка изменяется, чтобы влезть в границы причем сохраняется соотношение сторон (aspect ratio
)Aspect Fill
- аналогично второму пункту, но картинка может выходить за границы представленияЗа это отвечает свойство Content mode
:
Программно это свойство contentMode
.