• Jan
  • Feb
  • Mar
  • Apr
  • May
  • Jun
  • Jul
  • Aug
  • Sep
  • Oct
  • Nov
  • Dec
  • Sun
  • Mon
  • Tue
  • Wed
  • Thu
  • Fri
  • Sat
  • 27
  • 28
  • 29
  • 30
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

별점 슬라이더 만들기

image

0.5 단위로 슬라이드 되는 별점 슬라이더 만들기!

image

우선 슬라이드가 되어야 하니까 slider를 올려준다.

image

별점 이미지를 UIImageView로 5개 만들어주고 stack view로 감싸준다.

image

imageimage

(왼: slider, 우: stack view)
별점 stack view에서 slider로 위와 같이 constraint를 잡아준다. (겹치게끔)

이제 slider가 slide 될 때 마다 별점 이미지 뷰의 이미지를 바꿔주면 되는데, 이를 위해
UISlider의 Delegate 함수를 뒤져보자,,!!

Docs

보니까 Delegate는 따로 없고…

image

요런 부분이 있다.
addTarget 함수 써서 value changed event 감지해서 selector 함수 등록해서 쓰라는 얘기인 듯!

image

@IBOutlet 연결해주고

image

addTarget 해준다.
이제 slideStarSlider() 함수 내부에서 slide될 때마다 slider의 value값에 따라
이미지 처리 등을 해주면 된다!

image

slider의 min, max 값 설정 해주고

image

switch문으로 분기처리 해 줬다.
이제 stack view내 이미지뷰들을 가져와서 이미지만 변경해주면 된다.

image

UIImageView 배열을 만들어주고

image

for문을 돌려서 starStackView의 subview들을 append 해준다.

image

selector 함수 로직은 이렇게!
value가 0.5~1 사이면 한칸이 칠해져야 하므로 … 고게 좀 헷갈렸다.

image

slider를 stack view보다 위로 올려주고,

image

alpha값을 0으로 줘서 투명하게 만들면 완성! 되나 했는데
alpha값을 0으로 줘버리면 hidden처리가 되는건지 터치가 안먹는다.

image

thumb 이미지 투명으로 바꿔주고

image

alpha는 0.1로, Tint color도 투명하게 바꿔줬다

Screen-Recording-2021-06-22-at-12 15 17-AM

끝 ~