2012-07-19 8 views
18

so come creare attributi personalizzati per le viste, ad esempio:Come aggiungere documentazione agli attributi personalizzati?

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <declare-styleable name="SomeViewsCustomAttrs"> 
     <attr name="someAttr" format="dimension" /> 
     <attr name="anotherAttr" format="boolean" /> 
    </declare-styleable> 
</resources>  

Mi chiedo se c'è un modo per aggiungere la documentazione per questi attrs personalizzati. Durante la modifica dei layout nell'editor XML, è possibile ottenere suggerimenti che descrivono le attrs. Ad esempio, se stai digitando android:layout_width= ti verranno fornite le seguenti informazioni: "Specifica la larghezza di base della vista. [Dimension, enum]"

C'è un modo per fornire quello per i propri attrs?

Grazie

+1

Forse hai mai trovato una risposta per questo? – drewhannay

+0

@drewhannay Ho rinunciato a cercare, non ho ancora trovato nulla. – cottonBallPaws

risposta

-1

È necessario scrivere costruttori nel codice e poi collegarli al XML. Leggi this per maggiori informazioni.

3

Add XML commento per ogni elemento:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <declare-styleable name="SomeViewsCustomAttrs"> 
     <!-- Default highlight color for items that are pressed. --> 
     <attr name="colorPressedHighlight" format="color" /> 
     <!-- Default highlight color for items that are long-pressed. --> 
     <attr name="colorLongPressedHighlight" format="color" /> 
    </declare-styleable> 
</resources> 

E in Java Doc nel file sorgente Java della visualizzazione collegamento per gli attributi come questo (ad esempio da TextView):

* See {@link android.R.styleable#TextView TextView Attributes}, {@link android.R.styleable#View View Attributes} 
+3

Non sto seguendo la seconda parte (file sorgente) della risposta. 1) Che cosa fa questo e perché è importante? 2) Dove nel file sorgente Java inserisci questi commenti di Java Doc (in alto? Al pacchetto, alla dichiarazione di classe/file, ad ogni metodo specifico?)? 3) Perché dovrei collegarmi a 'android.R.styleable' invece di' com.myproject.R.styleable'? –