본문 바로가기

카테고리 없음

[TIL] 24.03.22

#Morning Algorithm

햄버거 만들기

- 해결

- 1시간

- replacingOccurrences(of:, with:)를 사용해 해당 문자열을 공백으로 만드는 작업을 반복해 해결하려함

    - 한번의 loop에서 여러개의 문자열을 치환했을경우 최종 count가 달라짐

    - Stack을 사용해 stack의 위에서 4개만 추출해 해당 문자열과 비교후 같다면 제거하는 방식으로 해결

 

알고 갈점

removeLast(n: Int) - n 개수 만큼 뒤에서 삭제

for (index, element) in arr.enumerated() {} - 인덱싱

prefix(n), suffix(n) - 앞, 뒤에서 n개 만큼의 열

 

#UISwitchControl in UITableViewCell

 - 셀에 추가하는 것이 아니라 셀의 contentView에 추가해야됨

 - 데이터 전달 방법: protocol을 사용한 delegate 패턴 복습(TableViewCell 내부 UISwtich의 이벤트 처리를 ViewController에서 하기 위함)

 

#SwiftUI - Layout

 - layout Procedure

  1. Parent 는 Child 에게 size 제안
  2. Child 는 Parent 의 크기 제안을 고려해서 (완전히 무시도 가능) 자신의 size 를 결정
  3. Parent 는 child 의 결정을 존중 후 자신의 좌표 공간 내에 child 를 위치

- modifier 를 적용하면, 기존의 view 를 수정하는게 아니라 새로운 view 를 만듭니다

- frame은 제약조건이 아닌 하나의 view로 생각

 

- StackView를 활용해 늘어날 부분에 spacer()을 적용 -> 자식뷰가 각자 크기와 위치를 주장하며 부모뷰가 맞춰짐

 

 

 

 

References

- https://sujinnaljin.medium.com/swiftui-swiftui-%EC%9D%98-layout-3-%EB%8B%A8%EA%B3%84-cf70ba00f88e

- https://velog.io/@whale/SwiftUI-Layout-%EB%8B%A4%EB%A3%A8%EA%B8%B0