내일배움캠프 6주차 팀프로젝트로 Kiosk 앱을 구현했습니다.
GitHub - mastarTrack/team1_Kiosk
Contribute to mastarTrack/team1_Kiosk development by creating an account on GitHub.
github.com
1. 프로젝트 개요
🎯 프로젝트 명 - Gacha!
: 게임 아이템 상점 키오스크 앱
→ '키오스크'란 무언가를 사고 팔기 위한 하나의 도구라는 관점으로 접근하여
일반적으로 사용되는 식품 유형이 아닌 게임 아이템이라는 신선한 주제를 선정해보자는 의견에서 주제를 선정
→ 팀원 모두 플레이 경험이 있는 게임 '메이플스토리'를 테마로 선정
→ 일반 아이템 구매 기능 외 뽑기 시스템을 도입하여 재미 요소를 추가
🗓️ 프로젝트 기간: 2026.02.03 ~ 02.09.
🛠️ 기술 스택
- 개발 언어: Swift
- UI Framework: UIKit
- Library: SnapKit, IdentifiedCollections
- Architecture: MVC
- 협업 도구: Github
🙋🏻♀️ 담당 분야
- MainView 타이틀 영역 - 프로젝트 이름 ~ 카테고리 선택 SegmentControl
- MainView '가챠'탭 CollectionView
- 랜덤 뽑기 로직 구현
2. 화면 설명
1) MainView


- 가챠 탭
: 1회, 5회 뽑기 기능 - 정해진 확률에 따라 결과 반환
: UICollectionView
→ 3개의 섹션 - 아이템 목록 / 뽑기 / 결과
→ 결과 섹션 - 등급별 배경 색상을 달리하여 가시성↑
- 상의 / 하의 / 모자 / 신발 / 무기 탭
: 일반 등급 아이템 구매 기능
: 선택 상품 없을 시 구매 제한 - Alert
: UITableView
2) Inventory View


- 구매 및 뽑기 기능으로 획득한 아이템 확인 가능
: 동일한 아이템일 경우 수량 증가
: 등급별 배경 색상을 달리하여 가시성↑
: UITableView
- 판매 기능
: 구매 가격의 40% 가격으로 판매 (감가 적용)
: 판매 개수를 입력하여 개별 판매 가능
→ 보유 범위 벗어날 시 오류 - Alert
: 보유하고 있는 전체 아이템 판매 가능
3) 시연 영상
'내일배움캠프 > Kiosk - Gacha!' 카테고리의 다른 글
| [트러블 슈팅] UICollectionView FooterView의 UIPageControl currentPage 변경 (0) | 2026.02.16 |
|---|---|
| [트러블 슈팅] UISegmentedControl 배경 색상 설정하기 (0) | 2026.02.10 |
| [트러블 슈팅] UISegmentedControl 이니셜라이저 재정의 (0) | 2026.02.10 |