Meracie komponenty:SevenSegment: Rozdiel medzi revíziami

Z Kiwiki
Skočit na navigaci Skočit na vyhledávání
 
Riadok 40: Riadok 40:
 
'''xml (activity_meter.xml)'''
 
'''xml (activity_meter.xml)'''
 
<source lang="xml">
 
<source lang="xml">
     <eu.sensys.measurelib.SevenSegment      
+
     <info.kiwiki.measurelib.SevenSegment
 
         android:id="@+id/meter"
 
         android:id="@+id/meter"
 
         android:layout_width="wrap_content"
 
         android:layout_width="wrap_content"
Riadok 49: Riadok 49:
 
'''java'''
 
'''java'''
 
<source lang="java">
 
<source lang="java">
 +
inport info.kiwiki.measurelib.SevenSegment;
 +
importg info.kiwiki.measurelib.SevenSegment
 +
 +
...
 +
 
public void onCreate(Bundle savedInstanceState) {
 
public void onCreate(Bundle savedInstanceState) {
 
   super.onCreate(savedInstanceState);
 
   super.onCreate(savedInstanceState);
 
   setContentView(R.layout.activity_meter);
 
   setContentView(R.layout.activity_meter);
   MeraciKomponent mk;
+
   BaseComponent mk;
   this.mk = (MeraciKomponent) findViewById(R.id.meter);
+
   this.mk = (BaseComponent) findViewById(R.id.meter);
 
   mk.setLabel("Výstupný prúd");       
 
   mk.setLabel("Výstupný prúd");       
 
   mk.setLabel2("[mA]");
 
   mk.setLabel2("[mA]");

Aktuálna revízia z 10:53, 26. marec 2013

Jazyk EN SK Navigácia Android projekty -> Meracie komponenty -> Meracie komponenty:SevenSegment -> MeasureDemo

Opis

SevenSegment - 7 segmentový displej s meniteľnou šírkou displeja. Názov komponentu je zobrazený v hornej časti. Dodatočný text je umiestnený nad desatinnou časťou zobrazovanej hodnoty. Farba zobrazovaného čísla je závislá od svojej hodnoty (záporné, normálne, varovanie, upozornenie). Je možnosť vynútiť zobrazenie znamienka aj pri kladnom čísle.

Prednastavené hodnoty komponentu

  • value = 0
  • minimum - vypočíta sa automaticky ako najmenšie číslo, ktoré sa dá na displeji zobraziť
  • maximum - vypočíta sa automaticky ako najväčšie číslo, ktoré sa dá na displeji zobraziť
  • warning = 60 % z maxima
  • alert = 85 % z maxima
  • zobrazenie znamienka pre kladné čísla: nie
  • počet zobrazovaných miest: 6 (počíta sa aj desatinná čiarka)
  • počet desatinných miest: 2

Špeciálne nastavenie komponentu SevenSegment

  • 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 z výšky komponentu tak, aby jeho rozmery boli proporčne správne.
  • Zmena prednastavených vlastností komponentu SevenSegment:
    • Stále zobrazenie znamienka:
      • setProperty(SevenSegment.SEGMENT_TYPE, SevenSegment.SEGMENT_DISPLAY_SIGN_ON),
    • Znamienko sa nebude zobrazovať pri kladných hodnotách
      • setProperty(SevenSegment.SEGMENT_TYPE, SevenSegment.SEGMENT_DISPLAY_SIGN_OFF) pre vypnutie tejto možnosti.
    • Nastavenie počtu zobrazovaných miest:
      • setProperty(SevenSegment.SEGMENT_DISPLAY_LEN, m) - m je počet zobrazovaných miest
      • setProperty(SevenSegment.SEGMENT_FLOAT_POINTS, n) - n je počet desatinných miest
  • V prípade sa má zobraziť hodnota, ktorá sa nevojde na displej, zobrazí sa vodorovná čiara.
  • Minimálna a maximálna hodnota sa nedá nastaviť manuálne. Hodnoty sa vždy vypočítavajú.

Náhľady

Všetky náhľady majú nastavený tému DARK.

Príklad použitia

xml (activity_meter.xml)

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

java

inport info.kiwiki.measurelib.SevenSegment;
importg info.kiwiki.measurelib.SevenSegment

...

public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_meter);
   BaseComponent mk;
   this.mk = (BaseComponent) findViewById(R.id.meter);
   mk.setLabel("Výstupný prúd");      
   mk.setLabel2("[mA]");
   // zobrazenie znamienka - pripad B
   mk.setProperty(SevenSegment.SEGMENT_TYPE, SevenSegment.SEGMENT_DISPLAY_SIGN_ON);
   // nastavenie pre pripad D
   mk.setProperty(SevenSegment.SEGMENT_DISPLAY_LEN, 6);
   mk.setProperty(SevenSegment.SEGMENT_FLOAT_POINTS, 1);
   // hodnota max a min sa vypočíta: max=10000, min=-10000
   mk.setValue(10000);
   mk.setColorTheme(ComponentStyle.THEME_DARK);	 
}