当前位置: 首页 > 知识库问答 >
问题:

android-如何将java swing转换为android?

梁丘宏硕
2023-03-14

我完全是Android的noob,真的很难理解一些概念。我对java swing也有一点了解。我对使用spring mvc的java web应用程序有点了解。我正在使用eclipse indigo

事情是这样的:

在我成功创建了名为AndroidExer的android应用程序后,我创建了一个包。摆动演示并放置已经运行的swing源代码JTextAreaDemo。java(源代码来自教程。这在纯java中工作)。android似乎无法识别swing软件包(我不知道我是否理解正确,请帮帮我),因为我遇到了很多错误,大多数错误都是

我做了一些研究,发现android不能运行swing。我们可以在android上运行java swing和applet吗

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

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


共有3个答案

柯曦
2023-03-14

据我所知,没有程序可以直接将它们转换为android布局,但事实上android和java非常相似。如果你使用的是eclipse,那么构建UI就不会那么难了。你也可以使用android开发人员提供的这些布局教程、事件教程和控制教程来开始学习。

田镜
2023-03-14

从简单开始。你先构建界面。然后开始给它添加一些“管道”。

把这个过程分解成几个小步骤,你就会明白了。当你陷入困境时,你会更容易获得帮助。

恐怕你能指望的最好的就是重用你的swig应用程序将使用的业务逻辑。除此之外,你必须从头开始创造。

叶弘深
2023-03-14

我认为你不能把这两者混为一谈。如果你想要android原生应用,你需要使用android API而不是Swing。这是android文档。

 类似资料:
  • 我正在用android创建一个应用程序!我尝试使用下面这行代码从我的主Activity类中传递文件[]: 使用这行代码到我的MapsActive: 但是当我运行该应用程序时,它会显示一条错误消息: java.lang.RuntimeException:无法启动活动ComponentInfo{com.example.pathnrdo.eyespy1/com.example.pathnrdo.eyes

  • 问题内容: 如何将使用lwuit库的J2ME应用程序转换为android apk? 我尝试使用mircoemulator进行转换,但是当我启动应用程序时,它显示错误并退出。 问题答案: 阅读本文LWUIT for Android。这里清楚地讲述了如何使用Android进行LWUIT。仔细遵循stpes并更改您的MIDlet代码。只需签出LWUIT- Incubator 存储库,并将其用于LWUIT

  • 我正在做一个应用程序,使用API提供数据与时间戳。时间戳如下所示: 如何将这种格式的日期(Tue Jul 13 00:00:00 CEST 2010)转换为Java日期(字符串来自alfresco属性) 用java将字符串转换为日期

  • 我正在开发一个使用C/C++代码的Android库。 我显然有某种编码错误,只在运行时出错。 错误: 如果我正确理解,那么我应该能够将返回值强制转换为,然后能够将其分配给我的一个java类中的。然而,事实并非如此。 您将注意到,可以将强制转换为,因为我将其作为参数传入。通过执行c代码,我可以确认这是真的。 将转换/强制转换为的正确方法是什么?

  • 问题内容: 我无法在Android中将字符串转换为UTF-8。请帮我!! 结果: 但是“ ”应该编码为“ ” 问题答案: 在http://developer.android.com/reference/java/net/URLEncoder.html中,您可以了解到您使用的已弃用,应该使用 所以应该做到这一点。

  • 问题内容: 我想 将 HashMap 转换为json数组,我的代码如下: 我已经尝试过了,但是没有用 。有什么办法吗? 问题答案: 试试这个, 通过复制给定映射中的所有名称/值映射来创建新的JSONObject。 参数copyFrom一个映射,其键的类型为String,其值为受支持的类型。 如果地图的任何键为null,则抛出NullPointerException。 基本用法: 从JSONObje