对于一个应用程序我需要将一些对象放在我想要它们的确切位置,因此这次我需要使用AbsoluteLayout。
我想动态添加按钮,就像在以下XML中一样 - 但是在运行时。
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button
android:id="@+id/backbutton"
android:text="TEST123"
android:layout_x="120px"
android:layout_y="120px"
android:layout_width="100px"
android:layout_height="100px" />
</AbsoluteLayout>
我如何存档?我尝试使用以下代码添加按钮,但到目前为止我还没有找到设置layout_x和layout_y的函数。我怎样才能做到这一点?感谢。
AbsoluteLayout al = new AbsoluteLayout(this);
Button t = new Button(this);
t.setHeight(300);
t.setWidth(300);
t.setText("TEST123");
// x y ???
setContentView(al);
答案 0 :(得分:1)
将视图添加到布局时,您可以提供LayoutParams,您可以在其中指定视图的布局信息。
然而,AbsoluteLayouts已被弃用,理由充分。你将如何处理不同的屏幕尺寸和分辨率?您应该能够使用未弃用的布局对象的组合来创建您要查找的布局。请参阅developer docs作为起点。
如果您更详细地描述目标,有人应该能够帮助您选择正确的布局。
答案 1 :(得分:1)
您应该尝试使用Canvas方法。
onDraw(Canvas canvas)
使用画布 - 不会创建实际按钮,但您可以使用图像。 另请查看以下链接:Android drawing button to canvas with custom view?