Мы подготовили для вас подборку мобильных приложений, благодаря которым вы сможете изучать программирование где угодно. Делитесь приложениям, которые не попали в этот список, в комментариях!
SoloLearn представляет собой целый ряд мобильных приложений, которые обучают пользователя программированию при помощи специальных игр. Приложения SoloLearn доступны бесплатно для платформ iOS и Android .
Бесплатные курсы ведущих университетов мира на Coursera теперь доступны и в виде приложений для Android и iOS .
Мы не смогли пройти мимо этих замечательных ресурсов, которые также нацелены на обучение программированию в увлекательной форме.
Одна из самых популярных игр, обучающих программированию. Приложение часто используется в образовательных учреждениях для обучения разработке. Содержит курсы для всех возрастов.
Сервис , в котором можно соревноваться в программировании с другими участниками. Пользователям доступны различные языки для написания кода и задания, которые необходимо выполнить.
Если эти ресурсы показались вам интересными, советуем ознакомиться с нашей бесплатных онлайн игр, которые обучат вас программировать.
Без финансовых вложений и специальных знаний.
Вот простейшая инструкция, как создать элементарное iOS-приложение и испытать его на своем устройстве. Отталкиваясь от нее вы сможете дальше углубиться в тему и создавать реально полезные программы.
Примечание для пользователей Windows: чтобы создавать приложения для iOS вам необходимо установить OS X на виртуальной машине (VirtualBox, VMware). Это процесс отнюдь не прост и для его осуществления требуется отдельная инструкция.
1. Идем в App Store и устанавливаем среду разработки XCode :
Если у вас уже стоит XCode, то необходимо обновить его.
2. Запускаем xCode и выбираем пункт меню File
-> New
-> Project
:
3. Выбираем платформу и тип приложения:
4. Указываем информацию о проекте. Обратите внимание, что мы выбрали тип приложения «Universal»:
5. Нажимаем на кнопку New Folder и указываем имя папки, в которой будем хранить файлы приложения:
6. Снимаем галочку с чекбокса Create Git Repository и нажимаем кнопку Create . В результате вы должны попасть на стартовый экран работы над приложением:
7. Нажимаем на пункт Main.storyboard в правом меню, перетаскиваем на основное поле элемент Label и добавляем в него текст Hello_world :
8. Теперь надо сделать иконку для приложения. Подбираем картинку и загружаем ее на mapappicon.com :
9. Ждем когда веб-приложение закончит работу и указываем свой адрес электронной почты для получения архива с иконками:
10. Возвращаемся в XCode и в левом меню выбираем раздел Assets.xassets :
11. Открываем архив из почты и перетаскиваем иконки оттуда на рабочее пространство XCode:
12. Выбираем один из симуляторов устройств, нажимаем на кнопку запуска приложения (черный треугольник) и включаем на своем Mac Developer Mode :
13. Повторяем попытку запуска. Ждем, когда на симуляторе загрузится iOS:
14. Убеждаемся, что приложение работает:
Теперь можно посмотреть, как работает приложение на устройстве. Перед выполнением инструкции убедитесь, что у вас свежие версии XCode и iOS.
1. Идем в xCode -> Preferencies -> Accounts и добавляем свой Apple ID:
2. Подсоединяем iOS-устройство к компьютеру:
3. Выбираем нужное устройство в списке и нажимаем на кнопку запуска. Ждем некоторое время.
4. Если вылезло сообщение о проблемах с безопасностью, то на iOS-устройстве идем в Настройки -> Основные -> Управление устройством и разрешаем запуск приложений от разработчика с вашим Apple ID:
5. Идем на рабочий стол и находим иконку нового приложения:
6. Запускаем:
7. Отсоединяем устройство от компа. Теперь приложением можно пользоваться.
С помощью метода научного тыка и Google можно расширить вышеприведенную последовательность действий и создать более функциональное приложение. Но использовать его можно будет только на своих устройствах.
Ведь Apple предъявляет очень высокие требования к приложениям. App Store Review Guidelines включает в себя 29 пунктов и более сотни подпунктов. Для того, чтобы приложение им соответствовало и было принято для публикации в магазине, разработчику требуется большой объем технических знаний.
Если хотите создавать качественные приложения для iOS предназначенные для массового использования, надо учиться !
Язык программирования. Какой нужно знать, чтобы писать приложения под iOS
Язык программирования (wikipedia.org) - формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под ее управлением.
Пожалуй, вопрос, который я задал в названии этой части, довольно сложный. Я могу ответить на него просто – Objective-C. Если бы я на этом остановился, то я бы оказался неправ. Я бы сказал, что Objective-C – это необходимый минимум. Недавно проходила конференция от Яндекса – YET, на ней один из докладов был посвящен как раз тому, какие языки программирования должен знать разработчик. Ответ был вроде следующего: “Он должен изучать новые и новые языки программирования постоянно, не останавливаясь на каком-то конкретно” . Я с этим полностью согласен. Изучая новые языки программирования, вы изучаете новые подходы, методы программирования. Поэтому, чтобы писать приложения под iOS, нужно знать Objective-C, но также желательно знать и другие языки программирования, чтобы ваш код был хорошим, эффективным, гибким.
Если вы еще не программист, то я вам советую начать с языка Си. Скачайте книгу Кернигана и Ритчи (а лучше купите ) о языке Си, прочтите ее, проделайте все, что там вам предлагается, и уже после этого я посоветовал бы вам переходить к Objective-C. Если же вы уже представляете себе, как писать программы, готовы с легкостью ответить на вопросы – “Что такое типы данных? Что такое переменная? Что такое функция или метод? Что такое ссылка и указатель? Что такое “ include ”?” , вы знаете Си или C++ или же Java или C#, то вы готовы к написанию своего первого приложения под iOS.
Также вам необходимо знать основы ООП и шаблоны проектирования. Наверное, список можно и дальше продолжать, но вряд ли я готов претендовать на качественное объяснение данных понятий. Да, к сожалению, Objective-C не тот язык, с которого можно начать свой путь программиста. Но если вам нравится и хочется творить, то вам пора бежать в магазин, закупаться книгами и начинать свой путь разработчика.
Нужен ли дизайнер, разработчик интерфейсов или кто-то еще?
Очередной, не менее простой вопрос. Если вы программист и умеете писать консольные программы и хотите начать писать приложения под iOS, то на начальном этапе вам такой человек не нужен. Если у вас есть iPhone || iPad || iPod Touch, вы знакомы с iOS, то вам не нужен разработчик интерфейсов. Вообще, у Apple есть такой документ – Human Interface Guidelines . В данном документе описано, где и какой элемент интерфейса надо использовать. Поэтому на начальном этапе можно обойтись и без третьих лиц. Вообще iOS SDK предоставляет достаточно возможностей для разрисовки интерфейса приложения, так что рисовать в PS какие-то там кнопочки или разноцветные тексты, градиентные заливки и прочее вам не придется. Позже мы с вами создадим первый проект, в котором мы познакомимся со всеми этапами создания приложения “Hello, World!”.
Однако, нужно понимать, что когда пойдут серьезные проекты, приложения, которые вы захотите опубликовать в AppStore, то вам уже будет сложнее без дизайнера и разработчика. Сложность может проявиться на разных этапах – либо при разработке приложений, когда вы будете тратить часы в поисках необходимой картинки или сидеть и творить в PS, либо же после того, как опубликуете приложение и начнете получать комментарии от наших любимых юзеров, которые будут жаловаться на ваш убогий дизайн бесплатного приложения. Я столкнулся на обоих этапах с такими проблемами. После получения отстойных комментариев в AppStore я хотел забросить свое приложение, которое между прочим бесплатное, и забыть о неблагодарных пользователях. Однако, полезность самого приложения для меня, а также для многих других пользователей, заставила меня проглотить те гневные комментарии и продолжить разработку приложения. Месяца три назад я начал разрабатывать приложение вместе с дизайнером, который говорит что и куда вставлять, какой цвет выбирать, где и какую картинку рисовать, и это, я хочу сказать, довольно-таки удобно. Поэтому я все же советую в какой-то момент начать использовать услуги дизайнеров, чтобы получать хороший фидбэк от пользователей. И помните – пользователи iOS-устройств хотят видеть хороший дизайн приложения, даже если и его функциональность страдает.
Официальная часть: сертификат разработчика
Наверное, вы уже много слышали о каком-то там сертификате разработчика. Сейчас я постараюсь вас ввести в курс дела – зачем он и нужен ли он вам прямо сейчас. Сертификат разработчика представляет собой некий файл, как и любой другой сертификат. Этот файл выдает вам компания Apple после того, как вы пройдете все этапы регистрации в системе iOS (MacOS ) Developer (Enterprise ) Program .
Что же вам даст наличие данного файла и регистрация в одной из вышеуказанных программ? Ответов на этот вопрос – тьма тьмущая. Поэтому скажу только о самом важном (все нижеописанное дается вам ровно на один год):
Если вы решили, что вам нужен такой сертификат, то будьте готовы расстаться с 100$ (300$ для Enterprise), отправить факс в США, ввести данные вашей банковской карты (внимание! Вашей, именно вашей), ну и дочитать эту главу.
Итак, поехали.
После удачного прохождения квеста у вас будет доступ к http://developer.apple.com/membercenter/ . Пожалуй, обзор той страницы либо требует отдельной статьи, либо требует поиска в гугл/яндекс.
Ну вот, друзья, перейдем к оставшимся на повестке дня вопросам.
Необходимое оборудование для комфортной разработки
Если вы серьезно решили начать разрабатывать приложения под iOS, то крайне рекомендую сразу приобрести компьютер/laptop с MacOs. Наиболее дешевый вариант – Mac Mini, или что-нибудь б/у. Если вы студент и собираетесь таксать оборудование с собой – Macbook Air. Если у вас много денег и вы хотите мощный универсальный ноутбук – для игр, сложных вычислительных задач и программирования – Macbook Pro. Если вы хотите взять настольный компьютер – iMac или Mac Mini. Для разработки – вам подойдет любой компьютер в любой существующей конфигурации. Размер экрана – на ваше усмотрение. Я вот лично сейчас сижу за Macbook 13” и Mac Mini 17”. Меня устраивают оба дисплея. Если что, то можно всегда подключить внешний монитор к ноутбуку.
Не забываем о том, вам рано или поздно понадобится iPhone, iPod или iPad. Не надо доверяться только iOS-симулятору, который распространяется в одном пакете с Xcode. Всегда тестируйте релизные версии на девайсах. Или же – ищите тестеров (ответственных и добросовестных).
Если вы не готовы потратить столько денег на новое оборудование, то можно попробовать поставить хакинтош на ваш компьютер.
Вечный вопрос: Android или iOS?
Возможно, что данный вопрос надо было задать в самом начале, однако он все же расположился в конце данной статьи. Вы уверены, что хотите попробовать себя в область мобильной разработки, но не знаете какую мобильную платформу выбрать? Я не смогу ответить на этот вопрос за вас. Но я знаю одно – если вы хотите разрабатывать приложения под iOS, то вы должны любить продукцию Apple и операционную систему iOS и MacOs. Вы спросите – почему это? Ответ прост – вы должны любить свое дело, вы должны творить. Только тогда вы сможете разработать поистинне классный и полезный продукт. Только в этом случае вы будете изучать с наслаждением Objective-C и iOS. Я считаю, что это очень важно. Если вы обладаете схожими чувствами к продукции Apple, то смело идите в область iOS-разработок. Если вы думаете – я вот знаю Java, но не знаю Objective-C, однако мне больше нравится iOS, чем AndroidOs – то выбирайте iOS. Нет, ну а что вы ожидали, что я начну хвалить Android OS?
Также мне нравится iOS-сфера своим магазином приложений. Там все красиво, правильно и там очень жесткая модерация приложений. Та свалка приложений, которая сейчас в Andoroid OS – это просто ужас, как для пользователей, так и достойных разработчиков.
Что нужно сделать сегодня?
Сегодня вы должны решить: когда вы начнете разрабатывать приложения, хватит ли вам текущего опыта для изучения Objective – C , есть ли у вас необходимое оборудование, а самое главное желание?
Проверка готовности
Перейдем от теории к практике. Для практического занятия вам понадобится Xcode 4.2 с iOS SDK, желательно сертификат разработчика, знание С, С++, Java или Objective-C (ну может знания и в других языках подойдут) и, наконец, желание начать писать приложения под iOS. Если вам чего-то не хватает, например, сертификата разработчика, то статья будет актуальна для вас все равно. В любом случае, мне кажется, каждому пользователю iOS-девайса должно быть интересно взглянуть на внутреннюю кухню разработки приложений.
Создание нового проекта
Поехали. Нажимаем на иконку Xcode. Откроется окошко подобного содержания:
Выбираем пункт “Create a new Xcode project”. В следующем окне выбираем тип проекта. Нам нужен: “iOS – Application – Single View Application”.
Нажимаем Next. Увидим окно следующего содержания:
Разъясню поля ввода:
У вас появится окно выбора категории, куда будет помещен проект. Хочу только предупредить, что автоматически будет создана папка с названием вашего проекта в той папке, которую вы выбрали, то есть дополнительно папку под конкретный проект создавать нет необходимости.
Галочку “Create local git repository for this project” не ставим. Лучше потом при необходимости подключим наш проект к репозиторию кода, если вдруг понадобится.
Нажимаем “Create” и видим новое окно, окно нашего рабочего пространства:
И так, у нас создан проект, сгенерировались какие-то файлы, какие-то окошки открыты.
Ознакомимся с файлами в навигационном меню:
Компляция проекта
Компиляция -
Процесс компиляции состоит из следующих фаз:
Более простым языком от меня. На этапе лексического анализа проверяется, что все символы в вашем исходном коде идут в нужном порядке и связанные символы на следующих этапах будут рассматриваться как единая сущность – лексема. На этапе синтаксического анализа проверяется, что все лексемы расположены в правильном порядке, на нужных местах, в верной последовательности. И, наконец, на этапе семантического анализа проверяются соответствия типов данных.
И так, когда вы нажимаете “Build project”, то сначала выполняется лексический анализ вашего кода, если он успешен, то синтаксический анализ, и затем семантический анализ. В Xcode все время работает некий легковесный процесс, который выполняет эту функцию, тем самым подсказывая разработчику “на лету” . Например, если вы не поставили “;” или вдруг приравняли int некую строчку символов, то Xcode подчеркнет строку красной волнистой линией.
Запуск на симуляторе
И так, попробуем запустить наш проект, для которого мы еще не написали ни строчки кода лично.
Для этого обратимся к меню: Схема компиляции (ей присвоен зеленый цвет на моем скриншоте). Схема – это некая конфигурация проекта. Xcode генерирует ее автоматически. Нажимаем на строку, которая стоит справа от названия проекта (имя девайса), если девайс не подключен, то будет написано “iOS Device”. У вас появится выпадающий список следующего содержания:
В этом списке мы выбираем то, куда будет установлен наш проект: это может быть либо ваш девайс, либо симулятор. Если вы выбрали тип приложения универсальный, то можно будет выбрать тип симулятора: iPhone или iPad. Также можно для симуляторов выбрать версию операционной системы (важно протестировать проект на всех версиях iOS, на которые приложение можно установить). Раз заговорили о минимальной версии iOS, то надо и упомянуть, как определить ее минимальную версию? Все просто – если вы используете методы (фичи), которые были добавлены в версии iOS, например, 4.0 , то планка минимальной требуемой операционной системы поднимается до 4.0 . Давайте опустим планку до 4.0 с 5.0 . Для этого обратимся к меню: “Deployment target” (выделено синим цветом на моем рисунке). Из выпадающего списка выбираем 4.0 . Теперь опять вернемся к меню: Схема компиляции . Наш список теперь выглядит следующим образом:
Выберем “iPhone 4.0 Simulator”. И, наконец, нажимаем на стрелочку, под которой написано “Run”. В “Информационном табло” мы увидим процесс компиляции. После того, как все удачно соберется, у нас откроется окно симулятора iPhone:
Теперь быстро пробежимся по возможностям симулятора.
Ко всем этому можно получить доступ из меню программы симулятора:
Пару слов о симуляторе. На симулятор можно устанавливать приложения только через Xcode, их можно удалять прямо из симулятора (как и на реальном устройстве), он поддерживает многозадачность. Но и обладает многими ограничениями, например, нельзя устанавливать сертификат в локальное хранилище сертификатов приложения. Но самый главный недостаток то, что это СИМУЛЯТОР , а не ЭМУЛЯТОР . То есть он всего лишь делает вид, что является iOS-девайсом, просто отрисовывая похожий интерфейс (программный уровень). А вот эмулятор как раз выполняет в точности то, что будет выполнять девайс (на физическом уровне). Какой надо сделать вывод? Обязательно тестируйте на реальном девайсе. У меня бывали случаи, когда на девайсе работает, а на симуляторе нет, и наоборот.
Выводим “Hello, world!”.
Надеюсь, до этого этапа все более менее ясно. Если нет, то в процессе разработки начнете понимать более глубоко.
Данная глава написана в память о Деннисе Ритчи, создателе языка программирования C и ключевой разработчик операционной системы UNIX , а также как соавтор книги «Язык программирования C » .
Цель главы – украсить наш пустой серый экран. Отлично, поехали. Возвращаемся в Xcode, выбираем в навигационном меню “ViewController_iPhone.xib”. Далее выбираем “View” в появившемся списке. Справа выбираем “Attributes Inspector”. Вот как окно выглядит у меня плюс дополнительные комментарии:
Теперь добавим метку UILabel. UILabel – это название класса в iOS SDK, который позволяет отобразить нередактируемый текст на экране. Вообще, все классы, позволяющие что-то отобразить, имеют префикс UI : UIView, UITableView, UITextView, UIButton,…. В окне “Доступные объекты для отображения” ищем строку с именем Label. Как-то только нашли, то нажимаем на нее и перетаскиваем на наш текущий вид экрана.
Синие пунктирные линии помогут вам отцентрировать/откалибровать относительное положение метки. И так, выбираем Label в списке отображаемых объектов, если еще не выбрано, и видим в свойствах пункт: Text. Давайте впишем туда “Hello, World!” и нажмем Enter . Вот у нас изменился текст метки и сжался. Давайте это исправим. В категории свойств выберем “линейку” “Size Inspector”. Там есть поля:
Вы можете попробовать редактировать эти значения и проследить изменения. Также редактировать положение и размер можно непосредственное двигая метку (текст) и дергая ее каркас за различные “точки” .
Потратьте еще минут 15-25 и поиграйтесь с различными свойствами в различных категориях:
Впоследствии мы будем к ним возвращаться и я буду пояснять предназначение тех или иных полей.
Какие стандартные view есть в iOS.
В предыдущем пункте я затронул названия некоторых классов, отвечающих за интерфейс. Собственно приставка UI и означает User Interface. Тут я приведу, возможно не полный, список доступных типов view. Во-первых, все описанные ниже классы наследуются от UIView, т.е. обладают теми же свойствами и методами. Во-вторых, вы всегда можете создать собственный кастомный view. Список ниже:
1) UILabel – метка – основное назначение: отображение одной или нескольких нередактируемых строк текста.
2) UIButton – кнопка – основное назначение: обычная кнопка, посылает сигналы объектам, уведомляя о том, что на нее нажали
3) UISegmentedControl – кнопка с сегментами – основное назначение: кнопка с несколькими активными частями, можно определить, на какую нажали
4) UITextField – текстовое поле ввода – основное назначение: поле для ввода текста пользователем
5) UISlider – слайдер – основное назначение: обычный слайдер, помогает более интуитивно изменять какие-либо настройки
6) UISwitch – On/Off переключатель – основное назначение: имеет два состояни – включен или выключен, назначение очевидно
7) UIActivityIndicatorView – индикатор активности – основное назначение: обычно используется, чтобы сообщить пользователю о том, что приложение либо скачивает данные, либо просто выполняет какие-то вычисления
8) UIProgressView – индикатор состояния (прогресса) – основное назначение: отображать состояние завершенности чего-либо
9) UIPageControl – переключение между страницами – основное назначение: отображение количества страниц, отображение текущей страницы
10) UIStepper (>= iOS 5)- +/- пошаговый контроллер – основное назначение: тоже очевидно
11) UITableView – таблица – основное назначение: отображение таблицы, пожалуй, самый популярный элемент
12) UITableViewCell – ячейка таблицы – основное назначение: отображение строки в таблице, обычно кастомизируется
13) UIImageView – изображение – основное назначение: отображение картинки или изображения
14) UITextView – текстовое поле (скроллируемое) – основное назначение: отображение большого объема текста, который можно прокрутить.
15) UIWebView – web – основное назначение: отображение web-страницы
16) UIMapView – карты – основное назначение: отображение карты
17) UIScrollView – скроллируемый вид – основное назначение: отображение нескольких view, которые не помещаются на одном экране
18) UIDatePicker – вид выбора даты – основное назначение: идеальный вариант для ввода даты
19) UIPickerView – вид выбора барабанный – основное назначение: альтернатива таблице при выборе какой-либо опции
20) UIView – просто вид – основное назначение: очевидно
21) UINavigationBar – навигационная панель – основное назначение: панель, в которую выводится заголовок экрана и дополнительные кнопки управления
22) UINavigationItem – элементы UINavigationBar – основное назначение: очевидно
23) UIToolbar – тулбар – основное назначение: отображение панели, на которую помещаются кнопки для управления приложением
24) UIBarButtonItem – элементы тулбара – основное назначение: очевидно
25) UIBarButtonItem (fixed and flexible space) – элементы тулбара особенные – основное назначение: изменяем расстояние между кнопками на тулбаре
26) UITabBar – таббар – основное назначение: помогает переключаться между различными несвязанными с друг другом экранами
27) UITabBarItem – элемент таббара – основное назначение: очевидно
Даже если вы опытный программист – часто возникает желание выучить (или хотя бы ознакомиться) с новыми языками или подтянуть знания в старых. За компьютером этим, как правило, заниматься некогда. То ли дело вечерком, полистать на любимом iPhone или iPad…
Предлагаем вам небольшой перечень книг и приложений для изучения разных языков программирования на iOS.
Новинки книг будут поступать в магазин автоматически.
Курсы по веб-разработке в вашем кармане. Включает в себя больше тридцати уроков по программированию с практическими занятиями. Материал изложен просто и доступно, с долей юмора, так что учиться будет легко. А после каждого теоретического занятия вы будете создавать по сайту – от простого к сложному.
Тесты и больше 60 практических заданий.
Приложение для тех, кто хочет изучить этот популярный и очень интересный язык. В приложении собраны уроки для начинающих, курс по Python 3.4, руководство по разработке игр.
Требуется iOS 8.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.
HTML, CSS, Javascript, Ruby, Python – вот языки, которые вы можете выучить с помощью этого приложения. Основные понятия, которые пригодятся не только тем, кто хочет быть веб-разработчиком, но и тем, кто хочет быть немножко круче остальных пользователей сети.
Приложение на английском языке.
Требуется iOS 7.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.
Еще одно приложение для изучения языка Python. Подойдет как для новичков, которые хотят постичь азы, так и для тех, кто хочет углубить свои знания.
Приложение на английском языке.
Требуется iOS 8.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.
А это приложение для желающих изучить еще один популярный язык – Swift. Включает в себя больше двухсот руководств на английском и немецком языках.
Требуется iOS 7.0 или более поздняя версия. Приложение совместимо с iPhone, iPad и iPod touch.
Ну что-же, пришло время написать нам свою первую программу для нашего iPhone. Если вы еще не поставили себе XCode + iPhone SDK — то вам . И так, XCode у нас стоит и настроен, начнем?
Для начала научимся самому простому. Создадим программу, в которой будет одно текстовое поле в которое будем записывать наше имя и одну кнопку, по нажатию на которую наше имя будет записываться в приветствие. Выглядеть наша первая программа будет так:
Создаем наш первый и надеюсь не последний проект:
Далее нас спросит какой тип приложения создавать. Слева в панели выбираем iPhone OS -> Application а в центральном окне выбираем тип проекта View-based Application . Назовем нашу первую программу, допустим, FirstApp
В результате у нас создается проект с уже созданным контроллером (первым окном нашей программы)
Главное окно проекта выглядит вот так:
Xcode создал для нас первый контроллер, это два файла c названиями FirstAppViewController.h и FirstAppViewController.m
Файл FirstAppViewController.h выступает как-бы заголовком (оттуда и расширение файла.h от слова header) В нем мы будем оглашать переменные и методы которыми будем пользоваться в главном файле FirstAppViewController.m
И так, открываем файл FirstAppViewController.h и создадим два указателя:
IBOutlet UILabel *username;
Первая переменная username — это текстовая метка, в которую мы будем записывать наше имя. nikField — это текстовое поле, откуда мы будем читать наше имя.
Записывать это нужно в блоке @interface firstAppViewController: UIViewController { }
Еще создадим метод, который будем вызывать при нажатии на кнопку, для того чтобы представиться. Назовем метод setNik:
— (IBAction)setNik;
В итоге, наш файл FirstAppViewController.h должен выглядеть так:
#importТеперь, перейдем в файл FirstAppViewController.m
Добавим сюда наш метод setNik. Писать нужно после строчки @implementation firstAppViewController
- (IBAction)setNik{ username.text = nikField.text; }Тут мы прописываем, что при выполнении этого метода в текстовую метку username будет записан текст из поля nikField
Еще нам нужно освободить память от этих указателей после того как мы их используем. Делается это в методе под названием dealoc
- (void)dealloc { ; ; ; }Просто добавляем все указатели, которые использовали, вот в таком формате: ;
Теперь, открываем файл интерфейса FirstAppViewController.xib Он запускается в редакторе интерфейсов Interface Builder.
Из библиотеки компонентов перетаскиваем нужные нам компоненты в окно нашей программы и расставляем так как удобно. Дальше в маленьком окне выбираем File’s Owner и нажимаем Command+2 что переносит нас в меню Connections inspector. Видим там список наших указателей, которые мы уже прописывали, а справа от них пустые кружечки. Клацаем на пустой кружочек возле указателя nikField и не отпуская тянем к текстовому полю. Когда мы подводим к ниму указатель мыши, он обводится прямоугольником и отпускаем. Таким образом, мы привязали это поле к указателю nikField. Теперь сделаем так же с указателем username и перетащим его на тот текст, где хотим видеть наш ник (у меня на картинке это текст %username%). Еще чуть ниже видим наш метод setNik и связываем его с нашей кнопкой. Но когда вы поднесете к кнопке и отпустите, то выпадет контекстное меню из которого выберите Touch Up Inside. Это означает, что этот метод сработает когда мы нажмем и отпустим кнопку. То что нам и нужно:)
Ну что, сохраняем, переходим обратно в Xcode и нажимаем Build & Run. Урааа, наша первая программа запустилась:) Нажмем в текстовое поле, появляется клавиатура, пишем имя. Но в нашей программе еще не хватает одного маленького штриха. Это чтобы убиралась клавиатура по нажатию на кнопку Done, когда мы закончили вводить наше имя.
Для этого опять включимся в конструктор интерфейсов, нажмем на нашу кнопку. Нажмем Command+1 и найдем там блок Text Input Traits. В нем есть несколько выпадающих списков, но нас интересует только самый нижний: Return Key. Выбираем со списка Done и в низу блока ставим галочку возле Auto-enable Return Key. Дальше мереходим в Command+2 Connections Inspector и видем там слово delegate . Жмем на кружек возле него и тяним к блоку File’s Owner
Теперь возвращаемся в наш файл FirstAppViewController.m После нашего метода setNik добавляем еще такой код:
- (BOOL)textFieldShouldReturn:(UITextField *)theTextField { ; return YES; }Сохраняем и пробуем запустить (можно использовать комбинацию Command+R) Пробуем написать наше имя в текстовом поле. При написании появляется кнопка Done по нажатию на какую закрывается клавиатура. Теперь жмем на нашу кнопку и вуа-ля, программа с нами здоровается:)
Казалось бы какая мелоч, подумаешь написали такую мелоч. А я, когда много лет назад учил делфи, выучив один такой пример, чтобы по нажатию на кнопку что-то писалось на экране делал уже разные игрушки. Помните одну из самых первых браузерных игр Бойцовский клуб? Вот я делал себе ради забавы что-то похожее и там все было основано именно на таком принципе как мы только что с вами сделали. Так что играйтесь, экспериментируйте!
Вот вам еще линк на архив проекта Можно скачать, включить посмотреть если у кого-то что не получилось. Ну а если есть вопросы — то пишите в комментариях.