【问题标题】:Why use Math.min in layout method [closed]为什么在布局方法中使用 Math.min [关闭]
【发布时间】:2011-05-22 10:36:13
【问题描述】:

为什么在下面被覆盖的方法中使用 Math.min ?

   protected void layout(int width, int height) 
    {
        setExtent(Math.min( width, getPreferredWidth()), Math.min( height, getPreferredHeight()));
    }

我在这个问题中看到了这段代码 - BlackBerry - ButtonField with centered Bitmap

【问题讨论】:

  • 由于缺少有关您期望的任何其他信息,它就在那里,因为要设置的适当范围是 widthgetPreferredWidth 中两个可用值中的最小值,高度也是如此。跨度>
  • 我问的原因是,当我添加我的垂直字段管理器时,我在屏幕上水平得到一行未绘制的像素,我认为在设置范围时不使用 math.min 对我有什么影响(我记得记得以前在某个地方读过这个,不知道在哪里)。
  • 那么你不认为,最好发布一个关于一行未绘制像素的问题,希望是一个相当完整的问题示例(供其他人在他们的机器上重现),然后询问上述代码是否相关,或者您怀疑它以何种方式相关? (或者,公平地说,我宁愿你编辑这个问题来做这些,而不是发布一个新问题)。
  • 我只是想知道使用上述布局方法实现的有效上下文是什么,也许我应该在原始问题中指定这一点。我以前在示例中看到过这个,我想知道开发人员以这种方式覆盖布局的原因是什么。

标签: blackberry java-me


【解决方案1】:

我发现这很有帮助 - http://supportforums.blackberry.com/t5/Java-Development/Question-Regarding-setExtent-and-getPreferredWidth-for-Custom/td-p/469886

“请注意,用于 setExtent 的值决不能大于传递给布局的值。这些是该字段可用的最大范围。”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-29
    • 1970-01-01
    • 1970-01-01
    • 2013-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多