gpt4 book ai didi

java - 在 Kindle KDK 中设计 UI(扩展 java.awt)

转载 作者:行者123 更新时间:2023-12-01 04:52:32 24 4
gpt4 key购买 nike

我有一些 Android 开发经验,现在我决定学习一些新东西 - 为 Kindle 开发(不是基于 Android 的 Kindle Fire)。

亚马逊优惠KDK + Personal Basis Profile 1.1.2 (JSR 217)作为一个平台。

我的问题是,如何设计UI。我没有任何使用 awt 的经验(只是在 java swing 中做了一些应用程序),但这似乎不是一个大问题,因为它很简单......主要问题是“替换”android 的 ListView.

我尝试使用名为 KPages 的组件。但是,除了 KLabel 之外,我无法将其他任何内容放入页面模型中...

    PageProvider pp = PageProviders.createKBoxLayoutProvider(KBoxLayout.PAGE_AXIS);
final KPages pages = new KPages(pp);

for (int i = 0; i < 40; i++) {
final KPanel listItem = new KPanel();
// listItem.add(new KLabelMultiline("label numero " + i + " is not very good, because it will be displayed over more than one line and 'pages' won't be able to deal with it"));
listItem.add(new KLabel("label numero " + i + " is very good, because it won't be displayed over more than one line and 'pages' will be able to deal with it"));
listItem.add(new KButton("read"));
listItem.add(new KButton("edit"));
pages.addItem(listItem);
}

context.getRootContainer().add(pages);

上面的示例代码显示了我列出一些项目的努力。仅当使用 pages.addItem() 添加 KLabel 时,KPages 才能正常工作。只需插入 KLabelMultiline 就会导致分页多功能(而不是显示标签 0-12,它会像单行一样“显示”0-26,但 kindle 的屏幕仅显示 14-26)。尝试插入带有标签和 2 个按钮的整个 KPanel 会导致列出标签,后跟每个项目的一个空行,没有任何按钮...在外部页面显示相同的 KPanel 有效很好 - 我可以看到标签和两个按钮...

我几乎可以肯定,漏掉一些东西是我的错,但由于 KDK 上的可用信息非常少,我无法找到它......有人可以帮我吗?谢谢

最佳答案

尝试重写对 KPanel 构造函数的 getPreferredSizegetMinimumSizegetMaximumSize 调用。将宽度高度设置为您的屏幕尺寸。

final KPanel listItem = new KPanel() {
public Dimension getPreferredSize() {
return new Dimension(width, height);
}
public Dimension getMinimumSize() {
return new Dimension(width, height);
}
public Dimension getMaximumSize() {
return new Dimension(width, height);
}
};

关于java - 在 Kindle KDK 中设计 UI(扩展 java.awt),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14735734/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com