delle enumerazioni, è possibile ottenere una vasta gamma di tutte le costanti e ad anello su di loro molto facilmente utilizzando il codice come questo:
for(YourEnum value: YourEnum.values()){
System.out.println("name="+value.name());
}
Tuttavia, la classe Sensor si collega a non è un enumerazione, ma contiene un elenco di costanti. Non c'è modo di eseguire il ciclo in modo programmatico su quell'elenco come un'enumerazione senza specificare tutti i nomi delle costanti.
Tuttavia, è possibile creare una ricerca statica che mappa gli interi al valore della stringa che si desidera utilizzare, ad esempio
Map<Integer,String> lookup = new HashMap<Integer,String>();
lookup.put(TYPE_ACCELEROMETER,"Accelerometer");
//Code a put for each TYPE, with the string you want to use as the name
È possibile utilizzare questo come questo:
Log.d("SENSORTYPE","Type: " + lookup.get(tempSensor.getType()));
Questo approccio significa che devi ancora scrivere ogni costante e aggiornare la lista se le costanti cambiano, ma devi farlo una sola volta. Sarebbe una buona idea avvolgere la ricerca in una sorta di metodo o classe di supporto, a seconda di quanto ampiamente si desidera riutilizzarlo.
non è metodo "getName()" funzionante ?? – rajpara