【问题标题】:android - how to convert java swing to android?android - 如何将 java swing 转换为 android?
【发布时间】:2012-08-10 03:19:58
【问题描述】:

我对 android 完全是个菜鸟,真的很难理解一些概念。我对java swing也有一点了解。我对使用 spring mvc 的 java web 应用程序有点了解。我正在使用日食靛蓝

事情是这样的:

在我成功创建名为AndroidExer 的android 应用程序后,我创建了一个包com.swing.demo 并放置了已经运行的swing 源代码JTextAreaDemo.java(源代码来自教程。这是在纯Java 中工作的)。似乎android无法识别swing包(我不知道我是否理解正确,请帮助我)因为我遇到了很多错误,其中大多数都说<Class name> cannot be resolved to a type.当我检查建议时,eclipse没有包括任何关于导入的建议,这让我认为 android 无法识别 swing。

我尝试了一些研究,发现 android 无法运行 swing。 can we run java swing and applet on android

我的问题是如何将简单的 swing 演示转换为 android。我不知道从哪里以及如何开始。我真的需要帮助。顺便说一句,JTextAreaDemo.java 的代码在下面:

JTextAreaDemo.java

package com.swing.demo;

import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class JTextAreaDemo extends JFrame implements ActionListener {

   /**
 * 
 */
private static final long serialVersionUID = 5416184196156296457L;
JTextField jtfInput;
JTextArea jtAreaOutput;
String newline = "\n";
public JTextAreaDemo() {
    createGui();
}
public void createGui() {
    jtfInput = new JTextField(20);
    jtfInput.addActionListener(this);
    jtAreaOutput = new JTextArea(5, 20);
    jtAreaOutput.setCaretPosition(jtAreaOutput.getDocument()
            .getLength());
    jtAreaOutput.setEditable(false);
    JScrollPane scrollPane = new JScrollPane(jtAreaOutput,
            JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
            JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    GridBagLayout gridBag = new GridBagLayout();
    Container contentPane = getContentPane();
    contentPane.setLayout(gridBag);
    GridBagConstraints gridCons1 = new GridBagConstraints();
    gridCons1.gridwidth = GridBagConstraints.REMAINDER;
    gridCons1.fill = GridBagConstraints.HORIZONTAL;
    contentPane.add(jtfInput, gridCons1);
    GridBagConstraints gridCons2 = new GridBagConstraints();
    gridCons2.weightx = 1.0;
    gridCons2.weighty = 1.0;
    contentPane.add(scrollPane, gridCons2);
}
public void actionPerformed(ActionEvent evt) {
    String text = jtfInput.getText();
    jtAreaOutput.append(text + newline);
    jtfInput.selectAll();
}
public static void main(String[] args) {
    JTextAreaDemo jtfTfDemo = new JTextAreaDemo();
    jtfTfDemo.pack();
    jtfTfDemo.addWindowListener(new WindowAdapter() {

        public void windowClosing(WindowEvent e) {
            System.exit(0);
        }
    });
    jtfTfDemo.setVisible(true);
}
}

我真的需要你的帮助。谢谢。

【问题讨论】:

  • 这不是一个可以回答的问题,类似于“我怎样才能把猫变成狗”。解决办法:学习android编程。你说你“没有线索”,但是有很多教程和资源可以让你找到线索。我建议你这样做。投票结束这个非问题。

标签: java android swing user-interface layout


【解决方案1】:

我认为你不能将这两者混为一谈。如果你想要安卓原生应用,你需要使用 Android API 而不是 Swing。这里是安卓documentation

【讨论】:

  • 这就是我的想法,但我将如何开始?
  • @AndroidMoron:更新了 android 文档的 url。
【解决方案2】:

从简单开始。您首先构建接口。然后开始添加一些“管道”。

将过程分解为小步骤,您就会明白的。当您遇到困难时,您会更容易获得帮助。

恐怕您所能期望的最好的结果就是重用您的 swig 应用程序将使用的业务逻辑。除此之外,您必须从头开始创建。

【讨论】:

    【解决方案3】:

    据我所知,没有程序可以直接将它们转换为android布局,但实际上android和java非常相似。如果您使用的是 eclipse,那么构建 UI 不会那么难。你也可以使用android开发者的layout tutorialevents tutorialcontrol tutorial开始学习。

    【讨论】:

      猜你喜欢
      • 2011-07-09
      • 1970-01-01
      • 2015-07-05
      • 2018-08-03
      • 1970-01-01
      • 2013-11-29
      • 2020-11-14
      • 1970-01-01
      • 2013-04-17
      相关资源
      最近更新 更多