我是安卓新手。有什么方法可以在没有任何控件的情况下设计我们的布局。我正在使用相对布局,但如果我更改一个按钮,整个布局都会受到干扰。以自定义方式对齐按钮变得非常困难。我们是否有任何其他布局允许用户将视图保持在他想要的位置?
5 回答
您始终可以手动编辑 xml,而不是使用所见即所得的 ui 编辑器。这样你就可以更好地理解布局和小部件。
请阅读此文档http://developer.android.com/guide/topics/ui/declaring-layout.html。对于 android 的初学者来说,这里有你所需要的一切。这可能有点无聊,但真的很有用。
在 android 开发环境中,程序员更喜欢相对布局来制作 GUI/屏幕,因为它们非常灵活且独立于设备,但在您的情况下,您制作布局并更改按钮,这肯定会导致问题。在相对布局中,一切都依赖于其他一些小部件,因此从上到下和从左到右构成您的层次结构。从左上角开始,到右下角。
相对布局的基础知识使用 toLeftOf、toRightOf、alignParentRight、centerInParent、centerHorizontal、centerVertical。
除此之外,如果您使用自定义图形,则使用小部件的宽度和高度作为包装内容,否则在 dp 中使用小部件的宽度/高度,在 sp 中使用字体。
祝你好运。
您说您正在使用RelativeLayout
,这就是您现在遇到麻烦的根本原因。
在 aRelativeLayout
中,所有元素都定义了它们相对于父元素或布局中其他元素的位置。因此,如果您有 10 个元素,它们在 order 中相互依赖1 <- 2 <- 3 <- 4 <- 5 <- 6 <- 7 <- 8 <- 9 <- 10
,并且您更改了元素 5 的位置。这将直接影响元素 6 的位置,并导致多达 10 个的多米诺骨牌效应,有效地弄乱了您的布局。
但是,RelativeLayouts
一旦您掌握了使用它们的窍门,它们就会非常灵活且有用。另一方面,如果您只是将视图堆叠在另一个之上,请考虑使用LinearLayout
.
此处的文档在选择布局时特别有用。
是的,有许多可用的布局。相对布局是所有东西都相对于彼此定位的布局。这显然意味着对一个元素的更改往往会影响其他元素。如果你想要更健壮的布局,你可以使用 LineraLayout、FrameLayout、TableLayout、GridLayout 和 RelativeLayout 的任意组合。您可以在完全不使用 RelativeLayouts 的情况下构建任何东西,但话又说回来,这可能意味着您的布局 XML 将变得非常臃肿(并且可能呈现缓慢)。请记住,您可以混合搭配。因此,如果您想在屏幕上的某个点定位事物列表,您可以使用顶级 RelativeLayout 来定位嵌套的 LinearLayout(垂直)。通过这种方式更改顺序和/或从列表中添加/删除内容并不是那么乏味。