728x90
Dicee-iOS
주사위 앱 만들기
이미지 뷰 속성
- Aspect Fit: default
- Scale to Fill: 종횡비 유지하지 않고 늘려짐, 전체를 채울만큼 이미지를 위아래로 늘임
- Aspect Fill: 종횡비는 그대로 유지하면서 이미지 채우기
디자인을 코드와 연결하기
- 버튼을 control + 드래그 앤 드랍해서 clss와 overide 사이에 삽입
- 버튼 식별자 이름 지정: 카멜 방식 사용(첫단어만 소문자, 나머지 단어 대문자)
↓
- 연결된 것 확인: 마우스 우클릭(삭제하려면 x 클릭)
- 식별자 이름 변경 방법: 코드에서 해당 식별자 마우스 우클릭 -> refactor -> rename
코드로 이미지 변경하기
- 식별자.속성 = 값
↓
- 파란색 이미지 더블클릭 후 원하는 이미지 선택
화면에서 사용자 상호작용을 감지한 후 코드에 응답하기
- 버튼 Action 설정하기
: 버튼 선택 후 control+ 드래그 앤 드랍해서 viewDidLoad 함수 종료 다음으로 삽입
+ 버튼 식별자 이름 정해주기, Type을 UIButton으로 변경
↓
- 주석: //
- 콘솔에 출력: print
- 버튼 클릭 시 이미지 변경
에러 처리 방법
- 메시지의 가장 윗부분으로 스크롤
- reason 확인하기
- this class is not key value coding-compliant 구글 검색하기(스택오버플로우)
Swift 문법
Swift 주석, Print
- playground
- 문자열에 숫자 계산을 같이 출력
Swift 변수, 배열
- 변수 선언
- 변수 swap 예시
- 배열
- 변수, 배열 예시
Swift 상수
Swift 데이터 타입
- String
- Int
- Float
- Double
- Bool
Swift 난수
- 데이터 타입.random
//1과 10사이의 난수 출력
print(Int.random(in: 1...10))
- 배열 난수/섞기
소스코드
//
// ViewController.swift
// Dicee-iOS13
//
// Created by Angela Yu on 11/06/2019.
// Copyright © 2019 London App Brewery. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var diceImageView1: UIImageView!
@IBOutlet weak var diceImageView2: UIImageView!
var leftDiceNumber = 1
var rightDiceNumber = 5
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func rollButtonPressed(_ sender: UIButton) {
let diceArray = [ #imageLiteral(resourceName: "DiceOne"), #imageLiteral(resourceName: "DiceTwo"), #imageLiteral(resourceName: "DiceThree"), #imageLiteral(resourceName: "DiceFour"), #imageLiteral(resourceName: "DiceFive"), #imageLiteral(resourceName: "DiceSix") ]
diceImageView1.image = diceArray.randomElement()
diceImageView2.image = diceArray[Int.random(in: 1...5)]
leftDiceNumber += 1
rightDiceNumber -= 1
//1과 10사이의 난수 출력
print(Int.random(in: 1...10))
}
}
실행결과!
728x90
'iOS' 카테고리의 다른 글
[RC_week2] iOS 생명주기를 활용한 주문 앱 만들기 (0) | 2021.06.28 |
---|---|
[iOS_study] Autolayout 재정리 (0) | 2021.06.26 |
[iOS_study] iOS 유용한 정보, 사이트 정리(feat 유데미) (0) | 2021.06.25 |
[iOS_study] 유데미 한글 자막 설정(맥북, Chrome 환경) (0) | 2021.06.25 |
[RC_week1-3] 프로덕트 애플리케이션 프론트 구성해보기 (0) | 2021.06.20 |