betacode

Руководство iOS для начинающих - Hello iOS

  1. Подготовка
  2. Создать приложение iOS
  3. Главный интерфейс приложения
  4. Outlet Connection
  5. Action Connection
  6. Приложение: Удалить Connection

1. Подготовка

XCode это интегрированная среда разработки (Integrated Development Environment - IDE) предоставленная бесплатно компанией Apple, она помогает программистам разрабатывать приложения работающие на платформе iOS, macOS, tvOS и WatchOS. Поэтому удостоверьтесь, что вы установили XCode.
В данной статье я покажу вам как ознакомиться с Xcode и как создать простой пример приложения iOS, данный пример будет написан на языке Swift, современный язык разработанный Apple и IBM, который стал популярен в последнее время. На o7planning имеются статьи инструкции данного языка программирования:
Вы так же можете прочитать мою более детальную статью про то, что нужно для начала изучения программирования iOS, она поможет вам получить более подробный обзор:
  • Что нужно для начала работы с iOS?
Данная статья основана на:

Xcode 11.4

2. Создать приложение iOS

Сначала, на Desktop создайте папку с названием IOSTutorials, это папка, которая будет содержать ваш project.
Откройте Xcode и создайте новый project:
  • Product Name: HelloWorld
  • Organization Name: o7planning
  • Organization Identifier: org.o7planning
  • Language: Swift
Выберите папку IOSTutorials для хранения вашего project.
Xcode требуте вас предоставить информацию автора project, но вы можете пропустить данный шаг.
OK ваш проект создан, заметьте некоторые важные кнопки на Xcode, которые вы видите в изображении ниже, потому что вы будете довольно часто использовать их во время разработки приложения.
Это структура project:

3. Главный интерфейс приложения

Обратите внимание на файл Main.storyboard, это дизайн интерфейса вашего приложения. Кликните два раза на Main.storyboard, чтобы открыть его, вы увидите телефон iPhone, там где вы сможете смоделировать интерфейс вашего приложения визуально.
Перетащите Button в симулированный экран телефона.
На окне дизайна, вы так же можете изменить значения атрибутов (attribute) у Button, например цвет текста, цвет фона,...
Теперь вы можете протестировать свое приложение.
Появляется симулятор (Simulator) и вы увидите, как запускается ваше приложение.

4. Outlet Connection

Main.storyboard на самом деле является XML файлом, это дизайн интерфейса вашего приложения. Когда вы перетаскиваете компоненты в интерфейс, Xcode автоматически генерирует (generate) XML код. Вы можете посмотреть содержание Main.storyboard, нажав на правую кнопку мыши и выбрать:
  • Open As > Source Code
OK, вернемся к режиму дизайна Main.storyboard, нажав на него правой кнопкой мыши и выбрать:
  • Open As > Interface Builder - Storyboard
Один класс прочитает содержание Main.storyboard и нарисует на интерфейсе приложения, он так же имеет доступ в компоненты на интерфейсе и может изменить их. Вы можете найти название данного класса, на Menubar у Xcode выберите:
  • Editor > Assistant
Это и есть класс ViewController.swift.
Outlet это соединение (Connection) между компонентом в интерфейсе и объектом Swift, он помогает вам получить доступ в любой компонент на интерфейсе с Swift кодом.
Нажмите CONTROL и перетащите любой компонент на интерфейсе в окно ViewController.swift (Смотрите изображение):
  • Connection: Outlet
  • Name: buttonGreeting
После создания Outlet connection, XML код добавится в Main.storyboard и Swift код добавится в MainController.swift. Если вы хотите удалить данный Connection, вам нужно удалить код в 2-х местах, иначе будет ошибка при запуске вашего приложения (Смотрите приложение в конце статьи).
Вы можете использовать Swift код для изменения атрибутов Button, например настроить 4 угла круглыми.
ViewController.swift (*)
//
//  ViewController.swift
//  HelloWorld
//
//  Created by Tran on 5/6/20.
//  Copyright © 2020 o7planning. All rights reserved.
//

import UIKit

class ViewController: UIViewController {

    
    @IBOutlet weak var buttonGreeting: UIButton!
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        self.buttonGreeting.layer.cornerRadius = 50;
    }

}
Перезапустите ваше приложение:

5. Action Connection

Далее мы создадим Action Connection, чтобы обработать ситуацию, когда пользователь касается и отпускает Button.
Удержите CONTROL и перетащите Button в окно ViewController.swift:
  • Connection: Action
  • Name: buttonGreetingTouchUpInside
  • Event: Touch Up Inside
  • Arguments: Sender
Измените код ViewController.swift:
ViewController.swift (**)
import UIKit

class ViewController: UIViewController {

    
    @IBOutlet weak var buttonGreeting: UIButton!
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        self.buttonGreeting.layer.cornerRadius = 50;
    }
    
    @IBAction func buttonGreetingTouchUpInside(_ sender: Any) {
        let alertController = UIAlertController(title: "Greeting",
                                                message: "Hello World!",
                                                preferredStyle: UIAlertController.Style.alert)

        let ok = UIAlertAction(title: "OK", style: .default,
                               handler: { (action) -> Void in
                 print("OK")
             })

        alertController.addAction(ok)
             
        self.present(alertController, animated: true, completion: nil)

    }
    
}
Перезапустите ваше приложение:

6. Приложение: Удалить Connection

Outlet connection (Или Action connection) генерирует XML код на Main.storyboard и Swift код на ViewController.swift, поэтому если вы хотите удалить Connection, вам нужно удалить связанные коды в 2-х местах.