Meracie komponenty:Slider: Rozdiel medzi revíziami
(Vytvorená stránka „{{Template:Meracie komponenty obsah}} __NOTOC__ ==Opis== Slider - posuvný horizontálny ovládací prvok (posuvník). Posuvník obsahuje 2 hlavné časti: samotný posu...“) |
|||
Riadok 11: | Riadok 11: | ||
* alert = 85% z maxima | * alert = 85% z maxima | ||
− | ===Špeciálne nastavenie komponentu | + | ===Špeciálne nastavenie komponentu Slider=== |
*Pri použití komponentu sa odporúča nastaviť výšku komponentu na 0 dip. V tomto prípade sa správna výška vypočíta zo šírky komponentu tak, aby jeho rozmery boli proporčne správne. | *Pri použití komponentu sa odporúča nastaviť výšku komponentu na 0 dip. V tomto prípade sa správna výška vypočíta zo šírky komponentu tak, aby jeho rozmery boli proporčne správne. | ||
Riadok 73: | Riadok 73: | ||
slider.setLabel2("[mA]"); | slider.setLabel2("[mA]"); | ||
− | + | KeypadDialog kp = new KeypadDialog(this, slider); | |
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
</source> | </source> |
Verzia zo dňa a času 15:27, 2. január 2013
Jazyk EN SK | Navigácia | Android projekty -> Meracie komponenty -> Meracie komponenty:Slider -> MeasureDemo |
Opis
Slider - posuvný horizontálny ovládací prvok (posuvník). Posuvník obsahuje 2 hlavné časti: samotný posuvník a svoj vlastný displej, kde je zobrazená aktuálne hodnota posuvníka. Dodatočná textová informácia je umiestnená v časti pre zobrazenie presnej hodnoty komponentu. Posuvníkom sa dá ovládať iný komponent. Pre ovládanie hodnoty iného komponentu, obsahuje (ako všetky ostatné komponenty) metódu spätného volania, ktorá sa spustí, ak sa zmení hodnota komponentu.
Prednastavené hodnoty komponentu
- value = 0
- minimum = 0
- maximum = 100
- warning = 60% z maxima
- alert = 85% z maxima
Špeciálne nastavenie komponentu Slider
- Pri použití komponentu sa odporúča nastaviť výšku komponentu na 0 dip. V tomto prípade sa správna výška vypočíta zo šírky komponentu tak, aby jeho rozmery boli proporčne správne.
Náhľady
Príklad použitia
xml (activity_meter.xml)
...
<eu.sensys.measurelib.Slider
android:id="@+id/slider"
android:layout_width="wrap_content"
android:layout_height="0dp"
/>
<eu.sensys.measurelib.SevenSegment
android:id="@+id/segment"
android:layout_width="wrap_content"
android:layout_height="0dp"
/>
...
java
V nasledujúcom kóde je ukážka ako sa dá pomocou komponentu Slider nastavovať hodnotu inému komponentu (SevenSegment)
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_meter);
MeraciKomponent slider, sevenSegment;
slider = (MeraciKomponent) findViewById(R.id.slider);
sevenSegment = (MeraciKomponent) findViewById(R.id.segment);
slider.setLabel("Zmena teploty");
slider.setLabel2("[mA]");
// pouzitie callback metody OnValueChanged
slider.valueChanged = new ComponentCallback(){
@Override
public void OnValueChanged(double value) {
sevenSegment.setValue(value);
};
}
Zadávanie presnej hodnoty posuvníku
Pri zadávaní hodnoty ťahaním bežca komponentu Slider sa nedá hodnota nastaviť presne. Pre presné zadávanie hodnoty je pripravený komponent Keypad ktorý slúži na zadávanie presných hodnôt pomocou numerickej klávesnice. Dialóg KeyPad sa vyvolá dlhším podržaním prstu na mieste, kde sa zobrazuje presná hodnota posuvníku (okienko napravo).
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_meter);
MeraciKomponent slider;
slider = (MeraciKomponent) findViewById(R.id.slider);
slider.setLabel("Zmena teploty");
slider.setLabel2("[mA]");
KeypadDialog kp = new KeypadDialog(this, slider);
}