Java 到 Android 转换问题

发布于 2024-12-09 14:10:15 字数 417 浏览 1 评论 0 原文

我有一个非常复杂的 Java (JDK 6) 代码,需要进行转换才能在 Android 上运行。该Java代码旨在处理图形:因此我有一个扩展JLabel(Swing组件)的类,“paintComponent”方法重塑扩展的JLabel(“切割”它看起来像一个圆圈)并将其绘制在屏幕上(i知道,我知道 - 我可能会使用“drawCircle”方法,但我需要扩展 JLabel,因为它附加了一些弹出菜单)。

现在,我有一个问题 - Android 似乎没有“图形”类型,“尺寸”类型,“矩形”类型,“paintComponent”方法,毕竟,我不知道应该使用什么控件来绘制那些自定义的JLabels 打开(在 JDK 6 中,我使用了 JPanel,它是那些自定义 JLabels 的容器)。

请帮忙!我需要一些关于将给定 Java 逻辑转换为 Android 逻辑的最轻松方法是什么的建议?

I have a pretty complex Java (JDK 6) code that needs to be converted so it works on Android. That Java code is intended to work with graphics: thus i have a class that extends JLabel (Swing component), "paintComponent" method reshapes that extended JLabel ("cuts" it to look like a circle) and draws it on the screen (i know, i know - i might use come "drawCircle" method but i need to extend JLabel because it has some popup menu attached to it).

Now, i have a problem - Android don't seem to have "Graphics" type, "Dimension" type, "Rectangle" type, "paintComponent" method and after all, i have no idea what control should i use to draw those customized JLabels on (in JDK 6, i have used JPanel that was container for those customized JLabels).

Please help! I need some advice on what would be the most painless method for converting given Java logic to Android logic?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

蓬勃野心 2024-12-16 14:10:15

Android 提供了 图形2D Graphics,用于绘图。

看看 Shape Drawable ,它应该可以帮助您绘制矩形。使用 TextView 代替 JLabel。您将不得不花一些时间来了解 Android 并重新绘制 GUI,但我希望我提供了一些好的起点。
另请注意,根据代码的复杂性,您可能无法使用所有 Java 代码,因为 Android 不提供完整的 Java 版本。

Android provides Graphics and 2D Graphics, used for drawing.

Have a look at Shape Drawable which should assist you in drawing rectangles. Instead of JLabel use TextView. You will have to spend some time in getting to know Android and redrawing your GUI, but I hope I provided some good starting points.
Also note that depending on complexity of your code, you may not be able to use all your Java code, becase Android doesn't provide full Java version.

画尸师 2024-12-16 14:10:15

AFAIK Android 不支持 Swing,因此您必须使用等效的 Android UI 类。 Android UI 类与 Swing 类并不是一一对应的,因此有时 Android 端口意味着您需要进行大量的 UI 重写。

AFAIK Android doesn't support Swing, so you're going to have to use equivalent Android UI classes. The android UI classes are not a 1-to-1 match with Swing classes, so sometimes an Android port means you need to do a pretty heavy UI rewrite.

岁月苍老的讽刺 2024-12-16 14:10:15

Android没有JLabel,所以你不能使用这段代码。

而是使用 TextView 。您可以在 xml 或 java 代码中声明 TextView

Android do not have JLabel, so you can not use this code.

Instead use TextView . You can declare TextView in xml or in java code

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文