수색…


비고

주석 패키지에는 자신의 코드를 꾸밀 수있는 유용한 메타 데이터 주석이 여러 개 들어있어 버그를 잡는 데 도움이됩니다.

build.gradle 파일에 종속성을 추가하기 build.gradle 됩니다.

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

IntDef 주석

주석은 예상되는 유효한 정수 상수 만 사용되도록합니다.
다음 예제에서는 주석을 만드는 단계를 보여줍니다.

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;
    }
}

또한 코드 완성을 통해 허용 된 상수를 자동으로 제공 할 수 있습니다.
이 코드를 작성할 때 type 매개 변수가 정의 된 상수 중 하나를 참조하지 않으면 경고가 생성됩니다.

플래그와 상수 결합하기

IntDef#flag() 특성을 true 설정하면 여러 상수를 결합 할 수 있습니다.

이 항목의 동일한 예제 사용 :

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)

    .....

}

사용자는 허용 된 상수를 플래그 (예 : | , & , ^ )와 결합 할 수 있습니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow