我使用awt和swing包在JAVA中创建了两个窗口框架。我的Java代码就像:
import java.awt.*;
import javax.swing.*;
public class TopLevelWindow {
private static void createWindow() {
JFrame frame = new JFrame("Simple GUI");
//frame.setDefaultCloseOperation(JFrame.EXIT_ON_ CLOSE);
JLabel textLabel = new JLabel("Hi Ans ",SwingConstants.CENTER);
textLabel.setPreferredSize(new Dimension(300, 100));
frame.getContentPane().add(textLabel, BorderLayout.CENTER);
//Display the window.
frame.setLocationRelativeTo(null);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
createWindow();
createWindow();
}
}
现在执行我的代码我得到两个窗口,如帧和切换 这两个框架。
我想在Android中做同样的事情意味着
我该怎么办?有什么指导吗?
答案 0 :(得分:3)
Android中没有框架。您的活动表示一个窗口,对话框可用作弹出窗口。通过使用对话框主题,还可以使Activity作为对话框。在继续进行之前,我建议您阅读并理解basic works of Android。如果您需要使用Swing / AWT体验盐,它不能直接适用于移动设备平台
答案 1 :(得分:3)
实际上有许多方法可以在android中创建窗口。
如果你创建并启动一个新的Activity,你实际上是在创建一个新的全屏窗口。
如果要在现有窗口的顶部和内部创建一个窗口(有点像叠加层),最简单的方法是使用Dialog或PopupWindow类。
如果您希望根据窗口的行为进行完全控制,则可以使用WindowManager创建窗口(Dialog和PoupWindow类在幕后执行此操作)。这是创建窗口的低级方法,但它也为您提供了最大的灵活性。 所以像这样:
WindowManager wm = (WindowManager)getSystemService(WINDOW_SERVICE);
wm.addView (myView, myWindowLayoutParams);
这里棘手的部分是创建和配置第二个参数WindowManager.LayoutParams。这是你设置窗口标志的地方,它决定你的窗口的行为(模态与非模态,如果它接收触摸事件,它是什么类型的窗口,它应该使用什么样的动画,它应该使用什么类型的键盘,是它全屏与否等)。
有大量标志,请查看文档http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html