【发布时间】:2017-02-02 05:08:55
【问题描述】:
我不明白,我看 WindowManager.java 的代码,我可以看到:
public interface WindowManager extends ViewManager {
public static class LayoutParams extends ViewGroup.LayoutParams
implements Parcelable {
/**
* Control flags that are private to the platform.
* @hide
*/
public int privateFlags;
/**
*
* @see Gravity
*/
public int gravity;
}
}
为什么我可以访问字段重力但不能访问字段 privateFlags ?两个字段的声明似乎相似,为什么我不能?
【问题讨论】:
-
我要冒昧地说一下你实际上可以访问
privateflags。是什么阻止了你? -
@GiantTree 从我刚刚读到的内容来看,
@hide只会阻止生成文档,它不会影响您以编程方式访问字段的能力。 -
@GiantTree 哦,也许不是。链接中的 OP 在访问时似乎出现错误,但答案大多只是说明它会影响文档生成。
-
@Carcigenicate 您只能通过反射访问该字段。另外:应该不需要访问隐藏字段,就像答案所暗示的那样。
-
@GiantTree 我知道不需要访问它,它实际上对使用 API 的任何人都是私有的。我只是对链接中的 OP 出现错误感到困惑,但答案表明它只会影响文档生成。