Skip to content
Android Blog Italia

Android Blog Italia

Tutto quello che devi sapere sul mondo Android e della tecnologia

Primary Menu
  • News
    • Visualizza Tutto
    • Smartphone
    • Tablet
    • Accessori
    • TUTTI GLI ARTICOLI
  • Guide
    • Visualizza Tutto
    • ProgrammazioneGuide di programmazione
  • Recensioni
    • Visualizza TuttoCategoria relativa alle recesioni dedicate a smartphone, tablet, pc e dispositivi legati al mondo della Tecnologia.
  • Applicazioni
    • Visualizza tutto
  • Giochi
    • Visualizza Tutto
  • Guide e tutorial per Android
  • Programmazione

Guida programmazione Android – Lezione 15: LightSensor

Redazione 11/11/2013

Lezione15Continuiamo la nostra esplorazione dei sensori vedendo come gestire un “lightsensor”, cioè un sensore di luce.

Creiamo un nuovo progetto e lo chiamiamo stavolta lightsensor.

Lo scopo dell’applicazione sarà cambiare l’immagine di sfondo a seconda della luminosità rilevata. Quindi creiamo come già visto la nostra cartella drawable e inseriamo 2 immagini, giorno e notte.

Creiamo ora il layout, inserendo una delle 2 immagini (che diventerà quindi quella di default). Noi abbiamo scelto ad esempio quella del giorno. Cambiamo inoltre l’id dell’imageview in giorno_notte per semplicità.

screen layout giorno

Spostiamoci ora nella parte Java, aprendo il file MainActivity.java e scriviamo questo codice:

public class MainActivity extends Activity implements SensorEventListener{
	private SensorManager sensorManager;
	private ImageView giorno_notte;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
		sensorManager.registerListener(this, sensorManager.getDefaultSensor( Sensor.TYPE_LIGHT ),SensorManager.SENSOR_DELAY_NORMAL );
		giorno_notte=(ImageView)findViewById(R.id.giorno_notte);

	}

	@Override
	public void onSensorChanged(SensorEvent event) {
		if (event.sensor.getType() == Sensor.TYPE_LIGHT) {
			//il sensore di luce ha cambiato stato
			float luminosità=event.values[0];
			if(luminosità<50){
				//è buio
				giorno_notte.setImageResource(R.drawable.notte);
			}
			else{
				//non è buio
				giorno_notte.setImageResource(R.drawable.giorno);
			}
		}

	}	

	@Override
	public void onAccuracyChanged(Sensor sensor, int accuracy) {

	}

}

Come potete notare è tutto molto simile all’applicazione dell’accelerometro. Unica cosa che cambia è che stavolta abbiamo inserito TYPE_LIGHT come tipo di sensore (cioè un lightsensor), e che invece di modificare delle testView modifichiamo l’immagine visualizzata dalla ImageView. Riportiamo qui un video-esempio dell’applicazione:

Puoi guardare tutte le lezioni passate consultando l’indice del corso di programmazione android

Continue Reading

Previous: Ricerca rapida in rubrica: come attivarla su Android 4.3
Next: Fare Backup e Ripristino dei dati su dispositivi Android

Articoli Correlati

Come disattivare il GPS dello smartphone Come funziona il GPS
  • Guide e tutorial per Android
  • News su Android, tutte le novità
  • Sticky

Come disattivare il GPS dello smartphone

12/09/2023
Top 5 motivi per cui Cammus C5 è migliore della concorrenza Top 5 motivi per acquistare Cammus C5
  • Guide e tutorial per Android
  • News su Android, tutte le novità

Top 5 motivi per cui Cammus C5 è migliore della concorrenza

11/09/2023
Come personalizzare il setup di Cammus C5 Come personalizzare il setup di Cammus C5
  • Guide e tutorial per Android
  • News su Android, tutte le novità

Come personalizzare il setup di Cammus C5

01/09/2023

Ultime News

Snapdragon XR2 Gen 2 e Snapdragon AR1 Gen 1 ufficiali | Specifiche Qualcomm-Snapdragon-XR2-Gen-2-AR1-Gen-1-Chips-1536x864
  • News su Android, tutte le novità

Snapdragon XR2 Gen 2 e Snapdragon AR1 Gen 1 ufficiali | Specifiche

Redazione 01/10/2023
All’inizio di quest’anno, Samsung ha rivelato durante l’evento di lancio del Galaxy S23 che sta lavorando su...
Leggi tutto
iPhone 15 Pro Max rimane secondo nella classifica DxOMark iPhone 15 Pro Max

iPhone 15 Pro Max rimane secondo nella classifica DxOMark

01/10/2023
Apple voleva acquisire Microsoft Bing nel 2020 Microsoft Edge spia attraverso Bing

Apple voleva acquisire Microsoft Bing nel 2020

30/09/2023
Google permetterà agli editori di escludere i loro articoli dall’addestramento di IA generative Google Bard AI accesso alle app Google

Google permetterà agli editori di escludere i loro articoli dall’addestramento di IA generative

30/09/2023
Apple consiglia di non usare i cavi USB-C degli smartphone Android con iPhone 15 iphone-15-usb-c-port

Apple consiglia di non usare i cavi USB-C degli smartphone Android con iPhone 15

29/09/2023
Copyright © Tutti i diritti riservati | MoreNews by AF themes.
×

Questo sito utilizza i cookie, anche di terze parti, per garantirvi una esperienza di utilizzo ottimale.
Si rinvia all'informativa estesa per ulteriori informazioni. La prosecuzione nella navigazione (click, scroll, ...) comporta l'accettazione dei cookie.

 

Ok