반응형 분류 전체보기737 100 days of SwiftUI - Day25 정리의 시간과 마지막 도전!가위바위보 게임이지만 승리를 정해놓고 가위바위보를 내기!!/** So, very roughly:Each turn of the game the app will randomly pick either rock, paper, or scissors.Each turn the app will alternate between prompting the player to win or lose.The player must then tap the correct move to win or lose the game.If they are correct they score a point; otherwise they lose a point.The game ends after 10 questions, at w.. 2024. 11. 21. 100 days of SwiftUI - Day24 이번에는 저번에 배운 뷰의 조건, 커스텀등을 이전 프로젝트에 적용시키는 과제 이다.//Go back to project 1 and use a conditional modifier to change the total amount text view to red if the user selects a 0% tip.// 수정부분 foregroundColor 부분 추가!Section("전체 금액") { Text(totalAmount, format: .currency(code: Locale.current.currency?.identifier ?? "USD" )) .foregroundColor(tipPercentage == 0 ? Color.red : Color.black)}배운데로 삼항 연산자 사.. 2024. 11. 20. 100 days of SwiftUI - Day23 이번 클래스는 왜 View 가 클래스가 아닌 struct 인지 와 기본 템플릿의 body 는 왜 some View 를 리턴하는가에 대한 이야기 였다. 결론만 요약해서 말하면,클래스 인 경우 쓰지 않는 속성과 메소드로 간단한 장면을 그릴때에도 무거워지기 때문에 가볍고 빠르게 만들기 위해 View 를 쓰고 있고some View 는 역시 어떤걸 리턴할 지 모르지만모두 대응하는 값으로 설정하기 위한것이다! 로 볼수 있겠다. (View 는 protocol 이다 )추가적으로, modifier 의 순서는 중요하다! modifier 는 구조체의 끝에 .로 선언 및 추가 수정을 가하는것 인데,그냥 UI 컴포넌트를 빌더 패턴 체인 호출(java에서처럼) 같이 쓴다고 보면 될듯 하다. 어쨌든 순서의 중요성은 아래의 예를 확.. 2024. 11. 19. 100 days of SwiftUI - Day20, Day21, Day22 유우명한 깃발 게임을 swiftUI를 이용해 만드는 방법이다. 이제 좀 봐줄만 하면서 내가 만들었지만 재밌다 흐흐..색감? 같은게 정하는 방법이 있어서 간단한데 제법 이쁘게 나오니 먼가 한거 같은 감도가 업! 도전과제 ( 점수 표시하기, 8번 하면 다시 처음으로 돌아가기, 정답 틀리면 찍은 국기명 보여주기 ) 까지 완료해본 소스 //// ContentView.swift// GuessTheFlag//// Created by HanTJ on 11/18/24.//import SwiftUIstruct ContentView: View { @State private var showingScore = false @State private var gameEnd = false @State priva.. 2024. 11. 18. 100 days of SwiftUI - Day19 19일차는 과제 데이 다!저번 뿜빠이 프로그램을 베이스로 하여 단위 변환툴을 만드는 것이다. 난 온도와 길이 변환 툴을 만들어따!//// ContentView.swift// Changer//// Created by HanTJ on 11/17/24.//import SwiftUIstruct ContentView: View { @State private var selectedTemperture: String = "섭씨" @State private var inputTempeture:Double = 0 let tempertures = ["섭씨", "화씨", "켈빈"] var calculateTemperture:Double { switch selectedTemperture {.. 2024. 11. 17. 100 days of SwiftUI - Day16, Day17, Day18 드디어 본격적인 보이는? 프로그램의 시작!. SwiftUI 를 이용해, 뿜빠이 프로그램을 만들었다.//// ContentView.swift// WeSplit//// Created by HanTJ on 11/16/24.//import SwiftUIstruct ContentView: View { @State private var checkAmount = 0.0 @State private var numberOfPeople = 2 @State private var tipPercentage = 20 @FocusState private var amountIsFocused: Bool @State private var totalAmount: Double = 0 @State priv.. 2024. 11. 16. 100 days of SwiftUI - Day13, Day14, Day15 protocol 과 extension protocol 은 java 의 interface 와 비슷 extension 은 c#의 partial class 같이 일부를 재 정가능한데 class 가 아닌 struct 와 protocol 을 추가 지정이 가능함. 그래서 extension 을 이용해서 c++의 연산자 오버라이딩 이 구현 가능함 . 물론 기존 타입(String, Array) 등도 확장가능함. 기존타입들이 struct이기 때문에 가능 함 protocol Person { var name: String { get } func sayHello()}extension Person { func sayHello() { print("Hi, I'm \(name)") }}struct E.. 2024. 11. 15. 100 days of SwiftUI - Day12 오늘은 class 관련 공부다.java , c++ 의 클래스와 크게 다를점이 없다. struct 와 class의 차이를 아는게 많은 도움이 되겠다.struct 는 값복사, class 는 값참조다. 복사하려면 복사 구문을 만들어줘야 한다.값참조 이기 때문에 같은 참조하는 클래스들이 모두 사라져야 메모리 해제가 된다. 그래서 init , deinit 함수가 있다. deinit 은 c++의 파괴자로 생각하면 된다. ( 파괴자라는 말은 좀 여전히 맘에 안든다... )struct 와 다르게 var를 다루는 func 에 mutating 을 안붙여도 된다. 여기서 struct는 상수같구나! 해주면 된다. 가장 큰 struct vs class 의 차이점은 상속이다. class B : A 하면 B는 A를 상속.. 2024. 11. 14. 100 days of SwiftUI - Day10 ~ Day11 swift 에서는 class 보다 struct 를 많이 쓴다고 합니다. java에서는 wrapping class 라고 하는 원시타입(int, float, double 등등등) 의 클래스들도 struct 로 구현되었다고 하네요! 오호! c의 struct 같은 경우에는 별도 함수정의가 없는데 swift 에서는 함수정의가 되고, 대신 struct 내의 변수 조작을 하려면 함수 앞에 mutating 을 써야 합니다. 또, 해당 구조체를 이용한 변수 선언시에 상수(let)로 선언하면 오류가 발생합니다. struct Employee { let name: String var vacationRemaining: Int mutating func takeVacation(days: Int) { .. 2024. 11. 13. 이전 1 ··· 4 5 6 7 8 9 10 ··· 82 다음 반응형