Android 동적 값 범위 효과 구현 컨트롤

먼저 효과 보기:

1.의존 라 이브 러 리 추가 절차
1.프로젝트 의 gradle 파일 에 다음 과 같이 변경 합 니 다.

allprojects {
  repositories {
   ...
   maven { url "https://jitpack.io" }
  }
 }
2.최신 버 전의 의존 라 이브 러 리 를 추가 합 니 다.최신 버 전 은 오른쪽 에서 보 듯 이 마지막 버 전 을 수정 하면 됩 니 다.(가끔 버 전 을 업데이트 하면 readme 수정 을 잊 을 때 가 있 기 때 문 입 니 다)

dependencies {
   compile 'com.github.Brioal:BrioalSetting:1.0'
   ////         1.1,    1.0  1.1        
 }
2.사용 절차:
1.xml 레이아웃 파일
실제 사용 과정 에서 다른 구성 요소 와 함께 있 으 면 미끄럼 사건 이 실제 효 과 를 볼 수 있 습 니 다.코드 에서 어떻게 해결 하 는 지 아직 발견 되 지 않 았 습 니 다.설정focus아무것도 소 용이 없습니다.일시적인 해결 방법 은 구성 요소 에 부모 레이아웃 을 추가 하고 다른 구성 요 소 를 포함 하지 않 으 면 됩 니 다.예 를 들 어 다음 과 같 습 니 다.

<LinearLayout
  android:id="@+id/layout"
android:layout_centerInParent="true"
  android:layout_width="match_parent"
  android:layout_height="wrap_content">
  <com.brioal.rangeseek.view.RangeBar
   android:id="@+id/main_container"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:layout_centerInParent="true"/>

 </LinearLayout>
2.코드 설정

mRangeBar = (RangeBar) findViewById(R.id.main_container);
   //     
  final List<RangeEntity> list = new ArrayList<>();
  //           ,   String   Object  
  list.add(new RangeEntity("15℃", 15));
  list.add(new RangeEntity("18℃", 18));
  list.add(new RangeEntity("21℃", 21));
  list.add(new RangeEntity("24℃", 24));
  list.add(new RangeEntity("27℃", 27));
  list.add(new RangeEntity("30℃", 30));
  //     
  mRangeBar.setValues(list);
  //         
  mRangeBar.addOnRangeChangedListener(new OnRangeChangedListener() {
   @Override
   public void selected(int startIndex, int endIndex) {
   //              List       
    mTvMin.setText(list.get(startIndex).getValue() + "");
    mTvMax.setText(list.get(endIndex).getValue() + "");
   }
  });
3.사용자 정의 보 기 를 제공 하 는 방법

     
void addOnRangeChangedListener(OnRangeChangedListener listener)        
void setLineColor(int lineColor)          
void setLineWidth(int lineWidth)          
void setCircleColor(int circleColor)          
void setCircleRadius(int circleRadius)        
void setCircleWidth(int circleWidth)          
void setCenterColor(int centerColor)             
void setPointColor(int pointColor)          
void setStartIndex(int startIndex)          
int getStartIndex()          
void setEndIndex(int endIndex)       
int getEndIndex()        
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 고 는 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 댓 글 을 남 겨 주 십시오.

좋은 웹페이지 즐겨찾기