English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Prima di tutto, vediamo l'effetto:
Primo, le istruzioni per aggiungere le librerie di dipendenza
1. Effettuare le seguenti modifiche nel file gradle del progetto
allprojects { repositories { ... maven { url "https://jitpack.io" } } }
2. Aggiungere la libreria di dipendenza più recente, come mostrato di seguito, modificare semplicemente la versione alla fine (poiché a volte dimentico di aggiornare il readme quando aggiorno la versione)
dependencies { compile 'com.github.Brioal:BrioalSetting:1.0' //// Ad esempio, se l'ultima versione è 1.1, è sufficiente cambiare 1.0 in 1.1 per utilizzare la versione più recente }
Secondo, le istruzioni per l'uso:
1.xml file di layout
Nel processo di utilizzo reale, è stato scoperto che se combinato con altri componenti, l'evento di scorrimento diventa inattivo. Non è stato trovato un modo per risolverlo nel codice, né impostare il focus ha avuto alcun effetto. La soluzione temporanea è aggiungere una layout di padre al componente e non includere altri componenti, come mostrato di seguito:
<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. Metodi forniti per la vista personalizzata
Metodo Funzione void addOnRangeChangedListener(OnRangeChangedListener listener) Imposta l'ascoltatore degli eventi void setLineColor(int lineColor) Imposta il colore della linea centrale void setLineWidth(int lineWidth) Imposta la larghezza della linea centrale void setCircleColor(int circleColor) Imposta il colore del contorno del punto void setCircleRadius(int circleRadius) Imposta il raggio del punto void setCircleWidth(int circleWidth) Imposta la larghezza della linea del punto void setCenterColor(int centerColor) Imposta il colore di riempimento del punto selezionato void setPointColor(int pointColor) Imposta il colore di riempimento del cursore void setStartIndex(int startIndex) Imposta l'indice di inizio selezionato int getStartIndex() Ottiene l'indice di inizio selezionato void setEndIndex(int endIndex) Imposta l'indice di fine int getEndIndex() Ottiene l'indice di fine
Sommario
Questo è tutto il contenuto dell'articolo. Spero che questo articolo possa aiutare tutti a imparare o lavorare meglio. Se avete domande, potete lasciare un commento per discuterle.