1

我正在使用 Eclipse 为 Android 创建一个应用程序。我知道您在文件中设置了诸如将按钮或图像居中之类的属性,XML但是您将如何在 Java 中执行此操作?

4

3 回答 3

0

你有没有尝试过 :

Button button = new Button(getApplicationContext());
button.setLayoutParams(newLayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
button.setGravity(Gravity.CENTER_HORIZONTAL|Gravity.CENTER_VERTICAL);
于 2013-04-03T22:53:57.400 回答
0

很难说不知道你有什么。但是,如果您查看文档,每个 xmlattribute在 Java 中都有一个相关的方法。例如,查看 View Docs,您可以看到一个列表attributes及其对应的 Java 方法以及它实际作用的描述。您应该能够使用它来帮助您开始,然后您可以使用您尝试过的代码、您遇到的确切问题以及您可能收到的任何错误消息提出问题。祝你好运!

于 2013-04-03T22:46:27.920 回答
0

使用代码来集中你的东西,而不是XML文件中的属性。

居中一个按钮:

使用FlowLayout. 这将使按钮在容器中水平居中,但不是垂直居中。

JButton button = new JButton("Click Me!");
panel.setLayout(new FlowLayout(FlowLayout.CENTER));
panel.add(button);

如果您希望它在两个方向上居中,您可以使用BoxLayout.

JButton button = new JButton("Click Me!");
button.setAlignmentX(Component.CENTER_ALIGNMENT);
panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS));
panel.add(Box.createVerticalGlue());
panel.add(button);
panel.add(Box.createVerticalGlue());

中心图片:

@Override 
public void paintComponent(Graphics g) 
{
    super.paintComponent(g);
    Graphics2D g2d = (Graphics2D) g;
    int xCenter = (this.getWidth() - image.getWidth()) / 2;
    int yCenter = (this.getHeight() - image.getHeight()) / 2;
    g2d.drawImage(image, xCenter, yCenter, null); 
}
于 2013-04-03T22:49:08.423 回答