Meracie komponenty:Text

Z Kiwiki
Verzia z 10:38, 27. jún 2013, ktorú vytvoril Juraj (diskusia | príspevky)
(rozdiel) ← Staršia verzia | Aktuálna úprava (rozdiel) | Novšia verzia → (rozdiel)
Skočit na navigaci Skočit na vyhledávání
Jazyk EN SK Navigácia Android projekty -> Meracie komponenty -> Meracie komponenty:Text -> MeasureDemo

Opis

Text - jednoduchý komponent pre prosté zobrazenie hodnoty meracieho komponentu ako čísla. Názov komponentu je zobrazený nad samotným textom a zaberá 1/2 výšky komponentu. Dodatočný text je umiestnený hneď za hodnotou. Jeho pozícia teda závisí ak počtu znakov v zobrazovanej hodnote.

Prednastavené hodnoty komponentu

  • value = 0
  • minimum = -1000
  • maximum = 1000
  • warning = 60% z maxima
  • alert = 85% z maxima

Špeciálne nastavenie komponentu Text

  • Pri použití komponentu sa odporúča nastaviť výšku komponentu na 0 dp. V tomto prípade sa správna výška vypočíta zo zadanej šírky komponentu.
  • Zmena hodnoty komponentu Text je možná tapnutím na oblasť komponentu. Zadávanie hodnoty sa robí prostredníctvom vstavanej klávesnice (komponent Meracie komponenty:Keypad.
    • Pre implementáciu tohoto spôsobu zadávania je potrebné vytvoriť objekt KeypadDialog s parametrami: odkaz na aktuálnu aktivitu a odkaz na kompoent Text pre ktorý sa Keypad vyvolá.
  • Pomocou spätného volania metódy OnValueChenged rozhrania ComponentCallback je možné hontodu komponentu Text predať do iného komponentu, alebo systémového widgetu.

Náhľady

Príklad použitia

xml (activity_meter.xml)

    <info.kiwiki.measurelib.Text
        android:id="@+id/meter"
        android:layout_height="0dp"
        android:layout_width="wrap_content"
     />

java

import info.kiwiki.measurelib.ComponentCallback;
import info.kiwiki.measurelib.KeypadDialog;
import info.kiwiki.measurelib.BaseComponent;
import info.kiwiki.measurelib.Text;

public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_meter);
   BaseComponent mk;
   this.mk = (BaseComponent) findViewById(R.id.meter);
   mk.setColorTheme(ComponentStyle.THEME_PASTEL); 
   mk.setMin(0);
   mk.setMax(90);
   mk.setLabel("Natočenie popiskov na osi x");
   mk.setLabel2("°");
   
   // pridanie moznosti zadavania hdonoty komponentu Text pomocou Keypad
   KeypadDialog kp = new KeypadDialog(this, mk);

   // odchytenie udalosti zmeny hodnoty komponentu Text
    mk.valueChanged = new ComponentCallback(){
        @Override
	public void OnValueChanged(double value) {
          // value je nova hodnota komponentu Text
        }        	
     };
}