
앱 시작시 LaunchScreen으로 로딩 페이지를 구성하고

원하는 캐릭터를 눌렀을시 Information.swift 파일에 저장해둔 정보를 해당 캐릭터에 맞는 정보만을 가져와서 위 화면에 3번째 화면에서 보이게 했다. 그 후 3번째 화면 우측 상단의 Edit 버튼을 누르면 4번째 페이지로 연결이되고 해당 정보를 수정할 수 있게했고 그 정보를 수정하면 Information.swift 파일의 정보도 수정이 되도록 구성했다.
// Information.swift
// 정보 저장
import Foundation
struct Info {
var name:String // 이름
var age:Int // 나이
var area: String // 사는곳
var MBTI: String // MBTI
var position: String // 역할
var introduce: String // 자기소개
var blogURL: String // 블로그 URL
var gitHubURL: String // 깃허브 URL
}
class Information {
static let shared = Information()
var peoples = Array<Info>()
let names = ["이름1", "이름2", "이름3", "이름4", "이름5", "이름6"]
let ages = [29, 27, 26, 25, 30, 29]
let areas = ["인천", "화성", "서울", "강릉", "전주", "양평"]
let MBTIs = ["ESFJ", "INTJ", "ISFP", "ESTJ", "INFP", "ISFP"]
let positions = ["팀장", "부팀장", "팀원", "팀원", "팀원", "팀원"]
let introduces = [
"화이팅 입니다!1년 남았다..",
"30 많이 남았다!!",
"4년은 길다!",
"아직 5년 남았다!",
"30은 별거 없다!",
"30이 코앞이다..."
]
let urls = [
"블로그 링크",
"블로그 링크",
"블로그 링크",
"블로그 링크",
"블로그 링크",
"블로그 링크",
]
let gitHubURLs = [
"깃허브 링크",
"깃허브 링크",
"깃허브 링크",
"깃허브 링크",
"깃허브 링크",
"깃허브 링크",
]
let images = [
"이름1" : "kdh",
"이름2" : "kkh",
"이름3" : "psh",
"이름4" : "umy",
"이름5" : "ljh",
"이름6" : "ck"
]
private init() {
setting()
}
// 기본 세팅
func setting() {
if peoples.isEmpty {
for i in 0..<6 {
let people = Info(name: names[i], age: ages[i], area: areas[i], MBTI: MBTIs[i], position: positions[i], introduce: introduces[i], blogURL: urls[i], gitHubURL: gitHubURLs[i])
peoples.append(people)
}
}
}
// 사람 검색
func findUser(_ name: String) -> Info {
var info: Info = Info(name: "nil", age: 0, area: "nil", MBTI: "nil", position: "nil", introduce: "nil", blogURL: "nil", gitHubURL: "nil")
for i in peoples {
if i.name == name {
info = i
}
}
return info
}
// 사람 정보 업데이트
func updateUser(_ updatedInfo: Info) {
if let index = peoples.firstIndex(where: { $0.name == updatedInfo.name }) {
peoples[index] = updatedInfo
}
}
}

'Swift Study > Storyboard' 카테고리의 다른 글
| [iOS / Swift] Storyboard 간단한 로또앱 만들기 (0) | 2024.12.11 |
|---|---|
| [iOS / Swift] Storyboard 간단한 날씨앱 만들기 (1) | 2024.12.11 |
| [iOS / Swift] Storyboard 간단한 로그인 기능 구현 (0) | 2024.12.09 |
| [iOS / Swift] Storyboard 간단한 계산기 만들기 (0) | 2024.12.04 |
| Swift 계산기 만들기 (UIKit-Stroyboard) (0) | 2024.06.28 |