Meracie komponenty:Switch

Z Kiwiki
Verzia z 11:00, 26. marec 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:Switch -> MeasureDemo

Opis

Switch - dvojpolohový horizontálny prepínač. Prepínač nadobúda len 2 hodnoty 0 a 1, resp. zapnutý a vypnutý. Nad komponentom je hlavný nadpis, dodatočný text nie je použitý. Stav komponentu sa mení chytením (tapnutím) a potiahnutím ovládacej časti prepínača.

Prednastavené hodnoty komponentu

  • value = 0 (OFF)
  • minimum, maximum - nepoužité
  • warning, alert - nepoužité


Špeciálne nastavenie komponentu Switch

  • 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)

...
    <info.kiwiki.measurelib.Switch
        android:id="@+id/switch_segment"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
     />
    <info.kiwiki.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 Switch meniť zobrazenie znamienka pre 7-segmentový displej.

import info.kiwiki.measurelib.BaseComponent;
import info.kiwiki.measurelib.Switch
import info.kiwiki.measurelib.SevenSegment

...

public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_meter);
   BaseComponent prepinac, sevenSegment;
   prepinac = (BaseComponent) findViewById(R.id.switch_segment);
   sevenSegment = (BaseComponent) findViewById(R.id.segment);
   prepinac.setLabel("Zobrazenie znamienka");  
   prepinac.setOnClickListener(onClickListener);    

   android.view.View.OnClickListener onClickListener = new OnClickListener() {
	@Override
	public void onClick(View v) {
		double val;
		if(v.getId() == R.id.switch_segment){
			val=prepinac.getValue();	
			if(val==1)
				sevenSegment.setProperty(SevenSegment.SEGMENT_TYPE, SevenSegment.SEGMENT_DISPLAY_SIGN_ON);
			else
				sevenSegment.setProperty(SevenSegment.SEGMENT_TYPE, SevenSegment.SEGMENT_DISPLAY_SIGN_OFF);					
		}
	}
    };
}