개발자 코드(Code)/Swfit

IOS) Button (이전+다음), Label (파일명) , ImageView(배열을 통한 이미지 삽입)

Chain X 2020. 8. 26. 00:16
728x90
반응형

012
버튼 (이전+다음), 라벨 (파일명) , 이미지뷰(배열을 통한 이미지 삽입) 

//
//  ViewController.swift
//  Quiz5
//
//  Created by Leo_Jang on 25/08/2020.
//  Copyright © 2020 Leo_Jang. All rights reserved.
//

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var imgTitle: UILabel!
    @IBOutlet weak var imgView: UIImageView!
    
    var imageName = ["flower_01.png","flower_02.png","flower_03.png","flower_04.png","flower_05.png","flower_06.png"] // 파일 이름
    var numImage = 0 // 다음,이전의 넘기다는 기준값.
    
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        
        //초기화면 설정
        imgView.image = UIImage(named: imageName[numImage])    //사진 이미지 뷰. 이미지 = UIImage에 (이름 : 이미지 배열의 변수값에[기준값]) 즉 배열안에 있는 초기 이미지 값 0 번 부터 시작  기준 값이 0 이기 때문이다. 그래서 flower_01.png 화면부터 시작한다.
        imgTitle.text = imageName[numImage] //  라벨. 텍스트 = 배열[기준값] 즉 라벨의 텍스트값은 배열 이미지 파일값에 따라간다.
    }
    @IBAction func btnPrev(_ sender: UIButton) {
        numImage -= 1 // 초기화면시 마이너스 값이라 에러가 생긴다. 그래서 if문을 쓴다.
        if numImage < 0{
            numImage = imageName.count - 1 // 기준값 = 배열이미지.전체 수량에 -1 은 서로 동일하다. 즉  5번으로 이동하라
            //count는 전체 파일의 갯수(총6개) -1은 배열의 마지막 파일로 이동하라 배열은:0~5/ 5번으로 이동하라
        }
        imgView.image = UIImage(named: imageName[numImage])
        imgTitle.text = imageName[numImage]  //imgTitle은.text텍스트 = imageName 배열에[numImage]는 //imgTitle.text에 넣어준다.  즉 텍스트는 배열의 파일명을 따라간다.
    }
    
    @IBAction func btnNext(_ sender: UIButton) {
        numImage += 1
        if numImage >= imageName.count{   // if numImage= 다음, 이전의 넘기다는 기준값 >=  크면 imageNmae.count 배열의 전체 값보다 같거나 크면 기준점 0으로 돌아간다. 즉 배열 0번으로 이동한다. (컴퓨터는 중의적인게 있다. 배열 + 숫자 + 배열의 위치)
            numImage = 0  // 기준점 0 즉 배열 0번으로 이동하라
        }
        imgView.image = UIImage(named: imageName[numImage])  //
        imgTitle.text = imageName[numImage]
    }
    
}

 

 

반응형