기본 틀과 변경

Judy·2022년 1월 12일
0

카운터 방식 구성


1. 화면 터치

화면을 터치하는 방식의 카운터인 메인 화면을 만드는 데는 오래 걸리지 않았다.

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
	lblCount.text = String(Int(lblCount.text!)! + 1)
    }

touch 이벤트가 발생할 때마다 레이블의 숫자를 하나 더해주면 된다.

2. 화면 슬라이드

화면 슬라이드를 인식하는 코드는 이전의 [Do It!] 책에서 배웠었다.

let slideUp = UISwipeGestureRecognizer(target: self, action: #selector(ViewController.slideScreen(_:)))
slideUp.direction = UISwipeGestureRecognizer.Direction.up
self.view.addGestureRecognizer(slideUp)


@objc func slideScreen(_ gesture: UISwipeGestureRecognizer){
    if gesture.direction == UISwipeGestureRecognizer.Direction.up{
	 lblCount.text = String(Int(lblCount.text!)! + 1)
    }else{
	lblCount.text = String(Int(lblCount.text!)! - 1)
    }
 }

Swipe 제스처를 위, 아래 방향으로 등록하고 함수에서 처리하면 된다.

3. 버튼 터치

버튼 방식은 버튼 하나로 할까 고민하다가 Stepper를 이용하는게 편리하고 이전에 부모님을 위해 간단히 만든 적이 있어 금방 구성했다.

@IBAction func updownStepper(_ sender: UIStepper) {
    lblCount.text = Int(sender.value).description
}




초안 변경

아무래도 처음 작성한 화면 구성에서 변경이 생길 줄은 알았지만 이렇게 바로 나올 줄은 몰랐다..

화면구성을 하며 간단한 앱이라 화면도 엄청 간단하네~ 했는데 간과한 것들이 있었다.

1. 리셋 버튼

카운터는 잘 작동했는데 다시 처음부터 시작하는 리셋 버튼을 생각하지 못했다.

이미 툴바 양쪽에 설정과 메뉴선택 버튼을 넣어서 빈 화면 아무데나 놓자니 애매해졌다..

2. 툴바

리셋 버튼 넣을 공간을 생각하다보니 '굳이 툴바가 있어야하나?' 라는 생각이 들었다.

탭바 형식도 고려했지만 심플하게 하기 위해 메뉴선택으로 카운트 방식 변경이 가능하게 했었다.

하지만 방식 변경 또한 설정의 일종으로 설정 화면에서 모두 해결 가능하므로 메뉴 선택 버튼을 없애기로 했다.

툴바를 없애고 설정 버튼과 리셋 버튼만 상단에 두어 더 간편한 화면 구성으로 변경했다.


profile
iOS Developer

0개의 댓글