java - 延长黑莓横幅字段的高度

标签 java blackberry java-me

我正在尝试设置横幅的高度,以便将整个图像绘制在屏幕顶部。

这是我设置横幅高度的代码 -

protected void sublayout( int width, int height ) {
        Bitmap b = Constants.HEADER_LOGO;
        super.setExtent( b.getWidth(), b.getHeight() );
    } 

横幅高度已正确调整,但我无法使用添加方法向横幅添加字段。不会引发任何异常。

这是增加横幅字段高度的正确方法吗?

谢谢

最佳答案

这可能取决于几件事。如果您的位图不是屏幕的宽度,那么您可能没有为字段布局提供足够的宽度。我可能会做的是将你的 super.setExtent() 调用更改为

super.setExtent(width, Math.min(b.getHeight(), height));

有了这个,我假设您尝试设置为横幅的是 Horizo​​ntalFieldManager。您还会注意到其中还添加了 Math.min() 调用。您想要这样做的原因是您的宽度和高度是管理器可以占用的最大允许尺寸,如果您尝试调用尺寸大于它的 setExtent() ,您很可能会在控制台中收到错误消息,指出有没有足够的空间来布局。

现在您已经正确调整了 Manager 的大小,您可以将字段添加到此 HFM,然后 setBanner(hfm) ,您应该会成功!

关于java - 延长黑莓横幅字段的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5655753/

相关文章:

java - HTTP header 中没有 cookie

java-me - 如何在 lwuit 中获取 Midlet 版本?

java - 如何在 Gradle "compile"任务中用自定义库替换 JDK 标准库?

java-me - J2ME:如何检查没有引发任何可见异常的应用程序崩溃?

java - POST 请求发送 JSON 数据 Java HttpUrlConnection

java - Assets 在处置和重新加载后不会被渲染

java - 不允许将保留的 SQL 关键字 'User' 作为简单类型名称

user-interface - Blackberry:在纵向模式下锁定应用程序?

blackberry - 如何以编程方式拨号

java - 在JNI中直接获取DirectByteBuffer地址的风险