XCode

문제 설명 0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다. x의 모든 0을 제거합니다. x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다. 예를 들어, x = "0111010"이라면, x에 이진 변환을 가하면 x = "0111010" -> "1111" -> "100" 이 됩니다. 0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수를 완성해주세요. 제한 사항 s의 길이는 1 이상 150,000 이하입니다. s에는 '1'이 최소 하나 이상 포함되어 있습니다. 1차 고..
문제 설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 제한 사항 두 수는 1이상 1000000이하의 자연수입니다. 1차 고민 for문 하나에 if로 % == 0 조건걸면 끝나는거아닌가요 1차 코드 func solution(_ n:Int, _ m:Int) -> [Int] { var num = 1 for i in 1...min(n, m) { if n % i == 0 && m % i == 0 { num = i } } return [num, (n *..
시작한 이유 같이 공부하는 지인의 코드를 보고 완료선이 다른 셀에 그어지는 문제를 고쳐주다가 해당 지인이 완료선과 함께 글씨색을 바꾸는 것을 보고 따라서 만들었다. 코드 지인의 코드를 보다보니 나도 별도의 매서드를 만들고 클로저에 대한 값으로 cell에 넘겨주어야하는지 고민을 해보았다. 하지만 생각해보니 나는 updateCompletedLine이라는 함수가 Didset으로 설정이 되어있고 스위치를 누를 때마다 sender로 cell의 내용을 변경해주기에, 그리고 원래 textColor라는 UIColor가 존재하기에 그냥 완료선을 그을 때 같이 설정하면 된다고 생각했다. 그래서 해당 코드가 나왔는데 다시 생각해보니까 이러면 매서드 이름을 좀 바꾸어야겠다. 선만 바꾸는 작업이 아니니까...
학습 목표 Table View 사용에 있어서 익숙해지고 원하는 내용을 마음대로 넣어보자 Storyboard UIImageView를 사용하여 Cell에 담으면 이미지도 넣을 수 있다는 사실을 알았다. 제목과 세부사항에 대해서 넣을거라 label의 구속은 서로 크기가 다르게 잡힌 상태이다. 그리고 사용될 이미지는 Assets에 미리 담아두고 사용할 예정. Movie.swift 제목과 설명은 있지만 이미지가 없을 경우를 고려하여 이미지만 옵셔널로 담았다. MovieCell.swift struct에 담긴 내용과 굉장히 유사하지만 이건 셀에 담길 내용을 위한 Outlet이다. ViewController.swift setup()함수로 빼는 것이 원래 내 스타일인데 오늘은 그냥 안빼고 안에 넣어봤다. 그냥 그러고 싶..
문제 발생 원래 switchButtonTapped 라는 액션 내부에서 작동하도록 하려던 함수들이다. updateCenterLine을 통해 Boolean을 갈라내고 생성 혹은 삭제 함수로 가려고 했다. 작동은 잘 되었지만 todo a, b, c 총 3개를 만들고 b의 switch를 켠 채로 d를 생성하면 b에 그어진 센터 라인이 전혀 엉뚱한 곳으로 이동하는 문제가 있었다. 이를 수정하기 위해 코드를 여러군데 만지다보니 스위치가 on 상태였는데 추가하기 버튼으로 새 todo를 생성했더니 off가 되는 문제도 종종 발견되었다. 이를 해결하기 위해 튜터님을 찾아갔는데 방법은 다음과 같다. 문제 해결 우선 해당 함수를 삽입하여 cell의 재호출 시 기본값을 초기화하도록 만들었다. 이후 가운데 선을 그을지 여부에 ..
Xcode 기초 컴포넌트 UIImageView image 표시할 이미지를 설정하여 UIImage 객체를 할당 contentMode 이미지가 UIImageView에 맞춰질 때 크기 및 배치 방법 설정 ex) scalsAspectFit -> UIImageView에 맞추고 비율 유지 isUserinteractionEnabled 사용자 상호 작용에 대한 허용 여부 기본값 : false (터치 이벤트 무시) animationImages 애니메이션을 위한 이미지 배열 설정 여러 UIImage 객체 할당으로 애니매이션화 UITextField text 텍스트 필드에 표시되는 문자열 placeholder 텍스트 필드 입력을 유도하기 위한 텍스트 표기 keyboardType 텍스트 필드에 입력할 때 표시되는 키보드 유형 ..
자주 쓰이는 고차함수 count 배열 내 갯수를 세어준다. var arr1: [String] = ["존", "펠릭스", "앤서니", "시나", "주니어"] var arr2: [String] = ["존", "펠릭스", "앤서니", "시나", "주니어"] print(arr1) // ["존", "펠릭스", "앤서니", "시나", "주니어"] print(arr2.count) // 5 min() & max() 배열 내 최솟값(최댓값)을 반환함 옵셔널로 반환되니 반드시 if let 또는 guard let. var numbers = [1,2,3] print(numbers.min()) // Optional(1) print(numbers.max()) // Optional(3) fitstIndex(of:) & lastIn..
KBO Application 고민 1 문득 그런 생각이 들었다. 배경 색이 연하면 상관이 없겠지만 강력한 단색을 사용하는 팀의 경우 아래에 내용을 적어내기엔 가독성이 현저히 떨어질 것 같다는 생각. 그래서 제목 테두리 정도만 팀 컬러를 사용하고 나머지는 흰색으로 통일해야겠다! 해결 단계 1 상단에 팀 로고와 팀명이 쓰여지는 곳보다 조금 더 크게 label을 깔았다. (배경색을 일부만 변경하는 방법을 몰라서 Label을 사용하고 labelColor를 이용했다...ㅠ) 구속도 원하는 위치에 꼼꼼하게 잡고 해당 Label을 15번줄 backgroundLabel이라고 선언해주었다. 그리고 바꾸는 김에 viewDidLoad 내부가 너무 많아지는 것 같아서 View Controller와 똑같이 detailSetup..
오늘의 목표 앱 강의를 통한 델리게이트 패턴 이해 및 TextField를 다루는 코드 입력 기본 레이아웃 설정 가장 기본이 되는 레이아웃을 설정하였다. TextField 생성과 Button을 Stack View로 묶어주고 Constraint를 180 30 30, 높이 48, Spacing 15, Button Width 65로 설정하였다. View Controller로 넘어와서 IBOutlet에 textField라는 이름으로 생성해두었다. 이후 viewDidLoad 창에서 사용할 기능이 많았기에 setup()으로 설정하고 아래에 func setup() { }을 생성해두었다. 아주 사소하지만 중요한 팁이라고 생각되는데, 이럴거면 저번 주 목요일에 만든 KBO에도 적용시키면 좋았겠다는 생각이 들었다. 이후 ..
sngsp
'XCode' 태그의 글 목록 (2 Page)