2012-08-10 117 views
0

我是一个总的诺基亚到android,真的很难理解一些概念。我也对Java swing有一些了解。我对使用spring mvc的java web应用程序有点了解。我使用的Eclipse靛蓝android-如何将java swing转换为android?

事情是这样的:

我成功创建Android应用程序命名为AndroidExer我创建了一个包com.swing.demo并放置在已经运行的摆动源代码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

我的问题是如何将简单的摆动演示转换为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); 
} 
} 

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

+2

这不是一个可回答的问题,类似于“我怎样才能把猫变成狗”。解决方案:学习android编程。你声称你“没有线索”,但有很多教程和资源可以让你得到线索。我建议你这样做。投票结束这个非问题。 – 2012-08-10 03:23:44

回答

3

我不认为你可以混合这两个。如果你想要android原生应用,你需要使用Android API而不是Swing。这里是android documentation

+1

这就是我的想法,但我将如何开始? – AndroidMoron 2012-08-10 03:23:05

+2

查找教程或购买书籍并学习android API。 – 2012-08-10 03:25:16

+0

@AndroidMoron:更新与Android文档的网址。 – kosa 2012-08-10 03:27:11

1

只要我知道,没有可以直接将它们转换为android布局的程序,但事实上android和java非常相似。如果您使用的是Eclipse,那么构建用户界面不会那么困难。您还可以使用Android开发人员的这些layout tutorial,events tutorialcontrol tutorial开始学习。

2

开始简单。你先建立接口。然后开始添加一些“管道”。

把这个过程分解成几个小步骤,你就知道了。当你遇到困难时,你会更容易获得帮助。

恐怕最好的你可以希望的是重用你的swig应用程序使用的业务逻辑。除此之外,你必须从头开始创建。

相关问题