2014-01-20 47 views
0

说真的,这个Android GUI和布局系统让我感到很紧张。如果不将整个布局改变为自己并堆叠在一起,我就无法制作简单的TextField。查看Android GUI中的布局

例如,我将9个文本字段置于正下方,并在XML中更改其文本。然后,当我去修改他们的@ + id /整个布局本身改变了!我看着图形布局,文本字段堆叠在一起,然后推到屏幕的顶部!

我的意思是如何改变ID导致任何布局的差异?我是Android新手,但这对我来说没有意义,这是非常令人沮丧和令人沮丧的。这感觉就像我在制作接口时不得不多次尝试和错误,而不是使用逻辑思路。

有人能告诉我我做错了什么吗?

+2

成千上万的开发人员管理得很好。我怀疑这个问题可能与你的方法有关,尤其是当你认为错误在于Android时 - 你没有向我们展示你正在努力的XML。不要喋喋不休地说一些有用的东西,那么问问一个特定的焦点问题呢?您没有提供足够的信息来有效地回应,但我怀疑“RelativeLayout”可能很适合您的目标。最后,更改ID不会导致布局重新排列,但又不会看到XML,谁知道你做了什么? – Simon

+0

雅对不起,我只是沮丧。我使用线性布局,因为我认为这会更容易。 – user2817240

+0

选择“更容易”是没有意义的,因为不同的布局被设计为完成非常不同的事情。 LinearLayout将完全按照您所描述的方式堆叠控件 - 它提供了一个线性布局。边距和填充用于定位,但RelativeLayout通常更好。学习如何正确使用它需要一些投资,但许多人发现RL比LL更容易。 – Simon

回答

2
I mean how can changing the ID cause any layout differences???? 

您可能正在使用Relative布局,因为它这样做。在android中有不同的布局用于不同的目的。像Linear Layout,Relative Layout,Frame Layout

在相对布局中,您将视图相对于彼此放置(这意味着引用id的视图),这就是为什么当您移动1视图时,所有视图的放置引用也会移动。

因此,请仔细在RelativeLayout中放置视图。对于新开发人员来说这是有点困难的。所以,我建议首先考虑你想要什么以及如何实现它,而不是使用适当的布局。

+0

哦!你是对的,我正在使用相对布局。我改变它为线性和问题解决!谢谢。 – user2817240

+0

很高兴知道 – Androider