为什么我不能从android.view继承受保护的字段?

时间:2011-01-03 16:37:35

标签: java android view

我正在尝试覆盖作为offsetTopAndBottom(int offset)类方法的View方法。 但是当我尝试访问mTopmBottom字段时,即使它们在protected类中View,我也会收到错误。

有谁知道为什么我会遇到这种访问问题?

例如:

CustomView extend android.view.View{

   someOverridenMethod()
   {
       mTop = 10 //error, mTop no resolved as a type
   }
}

2 个答案:

答案 0 :(得分:0)

根据View javadoc,没有名为 mTop 的成员或方法。

答案 1 :(得分:0)

无法访问所有m{variables}。对于我的生活,我不记得为什么,与m{variables}没有成为公共API的一部分有关。

我遇到了类似的问题,经过几天的搜索,我发现它几乎不可能。

我相信您可以尝试拨打View.layout(int left, int top, int right, int bottom);

这将最终设置mTop值,此时您可以调用getTop()。然而,有一种疯狂的方法,你会发现许多其他方法将被调用作为结果。所以,这实际上对你有帮助还是很好......有待观察。

相关问题