티스토리 뷰

Xcode(버전11.2.1)를 이용하여 얼럿(Alert) 앱을 만든다:)

 

 

 

사용할 이미지를 프로젝트에 추가했다.

 

 

 

- 스토리보드 얼럿(Alert) 앱 화면 구성이다.

imageview, button 3개를 추가했다.

imageview - > 해당 이미지 출력

button - > 해당 작업 실행

 

 

 

- 아울렛 변수 추가

imageview  name 'gookbabImg'

- 액션 함수 추가

button name 'btnEggOn', 'btnEggOff', 'btnEat'

 

 

 

이미지 파일명과 스토리보드의 버튼 이름은 수정했다...

 

 

 

전체 소스 보기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
//
//  ViewController.swift
//  day191129_Alert
//
//  Created by 무니 on 29/11/2019.
//  Copyright © 2019 com.mooni. All rights reserved.
//
 
import UIKit
 
class ViewController: UIViewController {
    
    // 계란푼국밥 이미지, 그냥국밥 이미지, 다먹는다 이미지의 상수
    let imgOn = UIImage(named: "계란푼국밥.jpeg")
    let imgOff = UIImage(named: "그냥국밥.jpeg")
    let imgEat = UIImage(named: "다먹는다.jpeg")
    
    // 국밥 상태를 나타내는 변수(계란푼 상태는 true, 안푼 상태는 false)
    var isEggON = true
    
    @IBOutlet var gookbabImg: UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        
        gookbabImg.image = imgOn // 앱 실행시 계란푼국밥 이미지가 나타남
        
    }
    @IBAction func btnEggOn(_ sender: UIButton) {
        if (isEggON == true) {
            // 계란푼 상태일 경우, 계란이 풀여져있다고 알려 주는 얼럿을 실행함
            let eggOnAlert = UIAlertController(title: "경고", message: "현재 계란을 푼 상태입니다.", preferredStyle: UIAlertController.Style.alert)
            let onAction = UIAlertAction(title: "네, 알겠습니다.", style: UIAlertAction.Style.default, handler: nil)
           
            eggOnAlert.addAction(onAction)
            present(eggOnAlert, animated: true, completion: nil)
        }else// 계란이 풀어져있지 않은 상태일 경우, 계란을 푼다
            gookbabImg.image = imgOn
            isEggON = true
        }
    }
    
    @IBAction func btnEggOff(_ sender: UIButton) {
        if isEggON {
            // 계란푼 상태일 경우, 계란을 풀지 않을 것인지 묻는 얼럿을 실행함
            let eggOffAlert = UIAlertController(title: "계란 안풀기", message: "계란을 풀지 않으시겠습니까?", preferredStyle: UIAlertController.Style.alert)
            let offAction = UIAlertAction(title: "네", style: UIAlertAction.Style.default, handler: { ACTION in self.gookbabImg.image = self.imgOff
                self.isEggON = false
            })
            let cancelAction = UIAlertAction(title: "아니오", style: UIAlertAction.Style.default, handler: nil)
            
            eggOffAlert.addAction(offAction)
            eggOffAlert.addAction(cancelAction)
            
            present(eggOffAlert, animated: true, completion: nil)
        }
    }
    // 국밥을 먹을 것인지 묻고, '계란푼국밥','그냥국밥','국밥먹기'의 세가지 동작 중에서 선택해서 실행
    @IBAction func btnEat(_ sender: UIButton) {
        let gookbabEatAlert = UIAlertController(title: "국밥 먹기", message: "국밥을 드시겠습니까?", preferredStyle: UIAlertController.Style.alert)
        let offAction = UIAlertAction(title: "아니오, 그냥 국밥 보여주세요.", style: UIAlertAction.Style.default, handler: {
            ACTION in self.gookbabImg.image = self.imgOff
            self.isEggON = false
        })
        let onAction = UIAlertAction(title: "아니오, 계란 푼 국밥 보여주세요.", style: UIAlertAction.Style.default) { ACTION in self.gookbabImg.image = self.imgOn
            self.isEggON = true
        }
        let eatAction = UIAlertAction(title: "네, 다 먹겠습니다.", style: UIAlertAction.Style.destructive, handler: {
            ACTION in self.gookbabImg.image = self.imgEat
            self.isEggON = false
        })
        
        gookbabEatAlert.addAction(offAction)
        gookbabEatAlert.addAction(onAction)
        gookbabEatAlert.addAction(eatAction)
        present(gookbabEatAlert, animated: true, completion: nil)
    }
    
}
 
 
cs

 

 

 

시뮬레이터 결과 화면

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함