我正在尝试使用@ScreenOrientation
中的android.content.pm.ActivityInfo
。它的声明:
@IntDef({
SCREEN_ORIENTATION_UNSPECIFIED,
SCREEN_ORIENTATION_LANDSCAPE,
...
})
@Retention(RetentionPolicy.SOURCE)
public @interface ScreenOrientation {}
如果我像这样使用它,编译器无法解决它:
public abstract class ActivityBase extends ActionBarActivity {
@ScreenOrientation
protected abstract int getPhoneOrientation();
}
import android.content.pm.ActivityInfo.*;
无济于事
@android.content.pm.ActivityInfo.ScreenOrientation
也没有帮助。
我在gradle文件中有注释库
compile 'com.android.support:support-annotations:22.0.0'
是否有可能或者注释只是以某种方式隐藏?
答案 0 :(得分:2)
注释确实是隐藏的 - 如果你看ActivityInfo
(目前第313行):
https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/java/android/content/pm/ActivityInfo.java
您会看到它上面有@hide
注释,从而阻止我们在我们的应用中直接使用它。