[iOS] Cosmos

r1verfuture·2021년 10월 11일
0

iOS

목록 보기
5/30

Cosmos

  • 후기 등을 쓸 때 Slide 해서 별점 설정하는 기능 구현을 위해 사용한다.

Cocoa Pod Install

pod 'Cosmos', '~> 23.0'

Xcode Example

import Cosmos

cosmosView.rating = 5.0
cosmosView.text = ""
cosmosView.settings.starSize = 65
cosmosView.didTouchCosmos = didTouchCosmos
updateRating(requiredRating: 1)

func updateRating(_ requiredRating: Double?) {
	var newRatingValue : Double = 0.0
    
    if let nonEmptyRequiredRating = requiredRating {
    	newRatingValue = nonEmptyRequiredRating
    }
    
    cosmosView.rating = newRatingValue
}

func didTouchCosmos(_ rating: Double) {
	updateRating(rating)
}

Values

  • rating : 별점 값
  • text : 별점 옆에 나타날 글씨
  • settings.starSize : 별 크기
  • settings.disablePanGestures : Pan 제스쳐를 무시할지 여부 (특히 presentationStyle 이 pageSheet 인 경우 제스쳐가 무시 당하는 것을 막아주는데에 유용하게 쓰인다.)
  • settings.emptyBorderColor : 선택되지 않은 쪽에 있는 별의 경계선 색
  • settings.emptyBorderWidth : 선택되지 않은 쪽에 있는 별의 경계선 두께
  • settings.emptyColor : 선택되지 않은 쪽에 있는 별의 색
  • settings.emptyImage : 선택되지 않은 쪽에 있는 별 이미지 변경
  • settings.fillMode : 별점이 정수가 아닌 경우 별이 채워지는 형태 (.full / .half / .precise)
  • settings.filledBorderColor : 선택된 쪽에 있는 별의 경계선 색
  • settings.filledBorderWidth : 선택된 쪽에 있는 별의 경계선 두께
  • settings.filledColor : 선택된 쪽에 있는 별의 색
  • settings.filledImage : 선택된 쪽에 있는 별 이미지 변경
  • settings.minTouchRating : 선택될 수 있는 최소 별 개수
  • settings.passTouchesToSuperview : Superview 로 터치가 이동하는 것을 허용할지 여부 (Table View 사용할 때 유용하게 쓰인다.)
  • settings.starMargin : 별들 사이의 거리
  • settings.starPoints : 기본적으로 제공되는 별은 [CGPoint] 값을 이용했는데, 이 별의 모양을 바꾸기 위해 [CGPoint] 변경
  • settings.textColor : 별점 옆에 표시되는 글씨의 색
  • settings.textFont : 별점 옆에 표시되는 글씨의 형태 (UIFont)
  • settings.textMargin : 별점과 글씨 사이의 거리 (Double)
  • settings.totalStars : 화면에 나타날 수 있는 별의 최대 개수 (Int)
  • settings.updateOnTouch : Cosmos View 를 터치했을 때 별점이 갱신될지 여부 (Bool / false 로 설정했을 때는 rating 만 보여주고 input control 처럼 실행되지는 않는다.)
profile
#iOS #Swift #Developer #Python

0개의 댓글