android - getHeight() 与 mBottom 的区别 - mTop

标签 android android-layout android-widget

我刚开始学习 android 开发(和 Java 相关),并试图修改 Sliding Drawer 小部件。我注意到通过代码我发现如下行:

final int childHeight = mHandleHeight;
int height = mBottom - mTop - childHeight - mTopOffset;

为什么使用“mBottom - mTop”而不是 getHeight()?还有,为什么mHandleHeight已经存在了,还要专门为childHeight创建一个变量?

代码:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.3_r1/android/widget/SlidingDrawer.java?av=f 第637行

编辑:更改了引用代码中的第二行;这些变量(mBottom、mTop)在编写我们自己的 View 时不可用,因此我们必须改用方法“getTop()”和“getBottom()”。

最佳答案

呃,我不知道为什么我不先看看 ViewGroup 的代码,我不习惯我的 SDK 如此开放/随时可用:) http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.3_r1/android/view/View.java#View.getHeight%28%29显示函数定义,这很简单

6956     public final int getHeight() {
6957         return mBottom - mTop;
6958     }

由于这是问题的主要观点,我会尽快将其标记为已回答,并希望有人能从中受益。仍然不知道为什么会有额外的变量;也许在多线程环境中,mChildHeight 可以更改中间函数,因此您需要一个快照。

关于android - getHeight() 与 mBottom 的区别 - mTop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11321216/

相关文章:

android - 在 Android 中突出显示 Drawable 上的边缘

android - android中的滑动抽屉布局问题

android - 在 android 中使用 JAXB (xjc) 生成的类

android-widget - 在 Android UI 上动态扩展小部件

android - 如何在 Android 中制作工具栏(如辅助操作栏)?

java - 可以使用 4k 图像作为 Android 布局背景吗?

android - 如何仅在创建时将值插入数据库?(SQLite Android Studio)

android - 尝试使用android创建房间数据库,但不断出现依赖错误

android字符串资源与应用程序大小

android - MPAndroidChart - 使用多个文本而不是 "No Chart Data available"取决于数据