我正在使用 Eclipse 为 Android 创建一个应用程序。我知道您在文件中设置了诸如将按钮或图像居中之类的属性,XML
但是您将如何在 Java 中执行此操作?
问问题
92 次
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 回答