2011-05-18 27 views
1

我对Android开发非常陌生,虽然我得到了一般前提(甚至已经构建了一个小应用程序),但我一直在寻找其他开发人员的源代码以获取关于如何更好地处理大型项目的发展的想法。在Android中构建用户界面 - 视图与XML

读取一个开发人员的代码基本上同时为UI的各个部分使用XML布局和视图(类似于this question中要求的内容)。我明白他在做什么,但对我来说似乎过于复杂。 XML布局提供的功能已经可以创建对操作的响应。 (例如,为XML中的大多数组件提供“onClick”)。使用XML可以非常容易地生成布局。

所以,我的问题是 - 我可以摆脱使用活动和XML布局构建我的整个应用程序吗?我可以选择不使用任何视图吗? (当然,这是假设一个相对简单的应用程序 - 思考任务列表或类似的东西。)或者,我是否试图简化太多?

回答

1

我使用的一般策略是尽可能地将XML推送到XML中。这是一种与其他UI开发系统思维方式截然不同的方式,但一旦你超越了学习曲线,它非常酷。

我不知道你的意思是选择“不使用任何视图”。每个UI组件都是某种视图。如果你的意思是不使用任何自定义的View子类,那么是的,这绝对是可能的。创建自己的自定义视图类(然后在XML中使用它们!)的唯一原因是库存小部件和视图不会按照您的要求做。由于它们非常灵活,这往往是相当不常见的(直到你开始进入花哨行为或需要自定义图形行为)。

+0

刚刚加入?我所有的布局都使用XML来定义。虽然使用Java编写布局可能会有优势,但使用XML可以获得所见即所得的编辑器,并且可以更轻松地定义布局。唯一令人费解的是,如果你想用'Views'做任何事情,那么一旦它们用XML定义,就必须使用'findViewById'来获取它们。但绝对是通过Java来使用XML。 – 2011-05-18 17:15:53

+0

是的,我的意思是自定义查看子类。谢谢你的澄清。所以,只要我不需要一些自定义动态行为,我应该直接从XML创建我的视图。如果是这样的话,那就太棒了!这是我从阅读中怀疑的,但我不确定。 – JasCav 2011-05-18 17:17:35

0

我想你误会了,XML布局只是创建视图的捷径。无论哪种方式,最终都会得到相同的结果。混合,匹配,使用一个或另一个,这取决于你。

1

创建用于Android应用程序的UI有两种方法。它们是

  1. 使用XML - 您可以使用xml设计用于支持多设备的UI。另外,XML可以帮助您创建静态组件。

  2. Java代码 - 通常在Java中创建UI并不是一个好习惯。它适合,如果你创建一个samll应用程序。当你想用动态组件开发应用程序时,它也很有用。如果你想在UI中创建动态组件,Java代码可以帮助你实现这一点。

好方法是通过XML创建UI,除非UI中不需要动态组件。如果您需要动态创建UI,那么您就可以创建自定义UI,例如使用Java代码。

既然你是新来的Android,我想你指android developer site

+0

即使您需要动态视图,也可以使用预先构建的XML组合,这些XML包含很多您需要的全部功能,并且只需在需要时更改其可见性即可。当你不知道UI会是什么样的东西时,比起好,Java是唯一的方法。 – neteinstein 2011-05-18 17:38:50

+0

@NenetInStEiN:我只以这种方式告诉...... – 2011-05-18 17:41:29