Recherche…


Remarques

Le package d'annotations comprend un certain nombre d'annotations de métadonnées utiles avec lesquelles vous pouvez décorer votre propre code pour vous aider à détecter les bogues.

Ajoutez simplement la dépendance dans le fichier build.gradle .

dependencies {
    compile 'com.android.support:support-annotations:25.3.1'
}

IntDef Annotations

Cette annotation garantit que seules les constantes entières valides attendues sont utilisées.
L'exemple suivant illustre les étapes pour créer une annotation:

import android.support.annotation.IntDef;

public abstract class Car {

    //Define the list of accepted constants
    @IntDef({MICROCAR, CONVERTIBLE, SUPERCAR, MINIVAN, SUV})

    //Tell the compiler not to store annotation data in the .class file
    @Retention(RetentionPolicy.SOURCE)
    //Declare the CarType annotation
    public @interface CarType {}

    //Declare the constants
    public static final int MICROCAR = 0;
    public static final int CONVERTIBLE = 1;
    public static final int SUPERCAR = 2;
    public static final int MINIVAN = 3;
    public static final int SUV = 4;

    @CarType
    private int mType;

    @CarType
    public int getCarType(){
        return mType;
    };

    public void setCarType(@CarType int type){
        mType = type;
    }
}

Ils permettent également l'achèvement du code pour offrir automatiquement les constantes autorisées.
Lorsque vous générez ce code, un avertissement est généré si le paramètre type ne fait pas référence à l'une des constantes définies.

Combinaison de constantes avec des drapeaux

En utilisant l' IntDef#flag() défini sur true , plusieurs constantes peuvent être combinées.

En utilisant le même exemple dans cette rubrique:

public abstract class Car {

    //Define the list of accepted constants
    @IntDef(flag=true, value={MICROCAR, CONVERTIBLE, SUPERCAR, MINIVAN, SUV})

    //Tell the compiler not to store annotation data in the .class file
    @Retention(RetentionPolicy.SOURCE)

    .....

}

Les utilisateurs peuvent combiner les constantes autorisées avec un indicateur (tel que | , & , ^ ).



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow