dependencies {
implementation 'com.hedgehog.ratingbar:app:1.1.2'
}
app 단위의 gradle 파일 dependencies 태그에 해당 코드를 삽입한다
해당 레이아웃은 ConstraintLayout으로 작성되었음. 이에 유의하여 태그 내 설정에 변화를 주면 됨
<com.hedgehog.ratingbar.RatingBar
android:id="@+id/ratingbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
//RatingBar 클릭 가능 여부
hedgehog:clickable = "true"
//Rating Bar의 요소 갯수
hedgehog:starCount="5"
//Rating Bar 요소의 크기 조정
hedgehog:starImageHeight="90dp"
hedgehog:starImageWidth="70dp"
hedgehog:starImagePadding="20dp"
//해당 요소가 클릭되지(채워지지)않을 때 이미지
hedgehog:starEmpty = "@drawable/ic_heart_unselected"
//해당 요소가 클릭될 때 이미지
hedgehog:starFill="@drawable/ic_heart"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
RatingBar를 설치하고 싶은 뷰에 해당 코드를 삽입한다
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
ratingbar.setStarFillDrawable(resources.getDrawable(R.drawable.ic_heart))
ratingbar.setStarEmptyDrawable(resources.getDrawable(R.drawable.ic_heart_unselected))
}
}
위와 같이 요소가 채워졌을 때/비었을 때 두 가지 경우의 drawable을 설정해서 넣어주면 된다
hedgehog ratingbar
https://github.com/hedge-hog/RatingBar