Ho creato una vista personalizzata (trovarla here) con un attributo dichiarabile-stilabile di tipo enum. In xml ora posso scegliere una delle voci enum per il mio attributo personalizzato. Ora voglio creare un metodo per impostare questo valore a livello di codice, ma non riesco ad accedere all'enum.Come ottenere un enum che viene creato in attrs.xml nel codice
attr.xml
<declare-styleable name="IconView">
<attr name="icon" format="enum">
<enum name="enum_name_one" value="0"/>
....
<enum name="enum_name_n" value="666"/>
</attr>
</declare-styleable>
layout.xml
<com.xyz.views.IconView
android:id="@+id/heart_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:icon="enum_name_x"/>
Che cosa ho bisogno è qualcosa di simile: mCustomView.setIcon(R.id.enum_name_x);
Ma non riesco a trovare l'enum o ho anche non hanno idea come posso ottenere l'enum oi nomi dell'enum.
Grazie
Penso che affidarsi agli ordinali enum qui è destinato a creare codice inaffidabile. Una cosa verrà aggiornata e non l'altra, quindi avrai dei problemi. – tir38