Hola, Apple

1

Hablemos de iOS

2

Conozcamos XCode

3

驴Necesito un iPhone para ser iOS Developer?

Tu primera app en iOS

4

隆Hola, Mundo Apple!

5

Navegaci贸n con UINavigationController

6

Modales en la navegaci贸n

7

Utilizando controles en c贸digo

8

Autolayout vs SwiftUI

9

Autolayout

10

Listas con UITableView

11

Celdas personalizadas para nuestras listas.

12

Persistencia: UserDefaults

Manejo de dependencias

13

CocoaPods

14

Carthage

Servicios Web

15

Primeros pasos para consumir servicios

16

Afinando detalles para consumir servicios

17

Convirtiendo los JSON a modelos

18

Alamofire

Proyecto: PlatziTweets

19

Bienvenido a PlatziTweets

20

Configurando Proyecto

21

Dise帽ando vistas iniciales

22

Configuraci贸n de vistas iniciales

23

Configuraci贸n de registro

24

Descripci贸n de la API de PlatziTweets

25

Conexi贸n de la API y Autenticaci贸n

26

Registro de usuarios

27

Dise帽o del Tweet

28

Obteniendo Tweets

29

Creaci贸n de vista para publicar Tweets

30

Publicando Tweets

31

Borrando Tweets

32

Integraci贸n de la c谩mara

33

Conexi贸n con Firebase

34

Configuraci贸n de XCode para correr app

35

Subir imagen a Firebase

36

Publicar Tweet con imagen

37

Tomando Videos para el Tweet

38

Publicar Tweet con video

39

Detalles del video

40

Accediendo al GPS

41

Implementando mapas con MapsKit

42

Mostrando todos los estudiantes en el mapa

43

Retos del proyecto

En producci贸n

44

Enviar a pruebas con Firebase Distribution

45

Enviar tu aplicaci贸n a APP Store Connect

46

Distribuci贸n de tu app con TestFlight

iOS Avanzado

47

Dark Mode

48

SwiftUI

49

Terminando detalles de una vista con SwiftUI

50

Objective-C

Hola, iOS Developer

51

Felicidades

52

Expert Session: 隆nuevo espacio para resolver tus dudas sobre el desarrollo de Apps para iOS!

No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Configuraci贸n de vistas iniciales

22/52
Recursos

Aportes 10

Preguntas 0

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Tambi茅n podemos redondear los botones asignadole un Key Path

Los temas de IOS son muy bonitos y organizados 馃槃

Hola!
Mi proyecto no me reconoc铆a el cornerRadius. Era debido a un tema de versiones de iOS.

Lo solucion茅 de esta manera:

loginButtons.clipsToBounds = true
loginButtons.layer.cornerRadius = 25.0
if #available(iOS 13.0, *) {
loginButtons.layer.cornerCurve = .continuous
}

Si les aparece el siguiente error:

Xcode 12: Compiling for iOS 13.0, but module 'NotificationBannerSwift' has a minimum deployment target of iOS 12.0

Agreguen lo siguiente al final de su Podfile:

deployment_target = '12.0'

post_install do |installer|
    installer.generated_projects.each do |project|
        project.targets.each do |target|
            target.build_configurations.each do |config|
                config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = deployment_target
            end
        end
        project.build_configurations.each do |bc|
            bc.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = deployment_target
        end
    end
end

Y cambien el target a iOS 12.0, y vuelvan a compilar con command + B

Reto cumplido, e incluso agregue un banner en caso de que el usuario si introdujo los dos campos correspondientes鈥

import UIKit
import NotificationBannerSwift

class LoginViewController: UIViewController
{
    
    // MARK: - IBOutlets
    
    @IBOutlet weak var loginButton : UIButton!
    @IBOutlet weak var emailTextField: UITextField!
    @IBOutlet weak var passwordTextField: UITextField!
    
    // MARK: - IBActions
    @IBAction func loginButtonAction()
    {
        performLogin()
    }
    
    // MARK: - Functions

    override func viewDidLoad()
    {
        super.viewDidLoad()

        setupUI()
    }
    

    // MARK: - PRIVATE METHODS
    
    private func setupUI()
    {
        loginButton.layer.cornerRadius = 25
        //Esto se puede hacer con un KeyPath...
    }
    
    private func performLogin()
    {
        guard let email = emailTextField.text,
              !email.isEmpty else
        {
            
            NotificationBanner(title: "隆Hey!", subtitle: "Debes especificar un correo", style: .warning).show()
            
            return
        }
        
        guard let password = passwordTextField.text,
              !password.isEmpty else
        {
            NotificationBanner(title: "隆Hey!", subtitle: "Debes especificar una contrase帽a", style: .warning).show()
            
            return
        }
        
        guard let email = emailTextField.text,
              let password = passwordTextField.text,
              email.isEmpty,
              password.isEmpty else
        {
            NotificationBanner(title: "OK", subtitle: "Has introducido todas tus credenciales correspondientes", style: BannerStyle.info).show()
            
            return
        }
        
    }
  
}

Muy buena clase para entender mejor el manejo de la UI de iOS

Reto muy f谩cil de lograr vamos a por m谩s!!! 馃槑

No soy muy fan de tener que hacer cambios de UI fuera del storyboard, por el tema de que con el tiempo podrian existir tantos cambios de UI en el codigo que mover algo en un storyboard sea peligroso.

Me gust贸 mucho la librer铆a NotificationBannerSwift