안드로이드스튜디오
[Java] 안드로이드 seekbar 구현 (세로 seekbar)
eunda_coding
2022. 12. 22. 11:22
1) Seekbar 세로 버전
<SeekBar
android:id="@+id/progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:max="22"
android:min="0"
android:progress="15"
android:progressDrawable="@drawable/progress"
android:rotation="270"
android:splitTrack="false"
android:thumb="@drawable/ic_control"
android:thumbOffset="2px"
app:layout_constraintBottom_toBottomOf="@id/bg"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/bg" />
android:rotation을 이용해서 가로 뿐만 아니라 다양한 각도로 활용 가능하다
android:thumb는 seekbar 올리고 내리는 부분에 위치할 이미지 값을 설정할 수 있다
min과 max 값을 설정해 주어서 얼만큼 단위를 사용해서 구현할 지 결정
2) seekbar 0.5 단위씩 증감
climate_progress.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
temp.setText(String.valueOf(Common.getInstance().climateProgress * 0.5 + 16.5));
temperature_unit.setVisibility(View.VISIBLE);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
seekbar에서 1단위씩 증가 감소하는 예제는 많이 볼 수 있었으나 0.5씩 증가하는 예제는 찾아볼 수 없어서 좀 힘들었다