Android - 使用纯Java而不是XML创建应用程序?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android - 使用纯Java而不是XML创建应用程序?相关的知识,希望对你有一定的参考价值。
我想知道是否有可能创建一个只有Java的android应用程序。没有XML,没有其他东西。
在Eclipse中,当我创建一个新的Android项目时,会自动生成Manifest xml文件和主布局xml文件。我可以删除这些文件并用Java文件替换它们吗?
对于布局,您有两种选择
- 以XML格式声明UI元素。 Android提供了一个简单的XML词汇表,它对应于View类和子类,例如小部件和布局的类。
- 在运行时实例化布局元素。您的应用程序可以以编程方式创建View和ViewGroup对象(并操纵其属性)。
因此,对于第一个问题 - 是的 - 您可以删除xml布局文件(如果必须)。
我想你无法摆脱manifest.xml。引用:
每个应用程序必须在其根目录中包含一个AndroidManifest.xml文件(具有该名称)。
是否可以避免使用XML?是的,除了清单和可能的一些主题声明(我不确定是否存在我们可以通过主题设置的所有内容的公共Java等价物)。
这是个好主意吗?天哪,不。
资源系统背后的重点是允许Android根据永久设备特征(例如,屏幕密度)和瞬态设备特征(例如,纵向与横向方向)透明地为您提供当前设备所需的适当资源。 )。
为了避免资源,你将不得不通过一堆if
语句来确定要运行哪些Java代码,手动检测所有这些事情。一旦考虑到Android本身的变化,这会变得非常复杂,因为新的配置更改和值会被添加,这使您难以以向后兼容的方式支持所需的一切。
在此过程中,除了普通的Java编辑和调试之外,您将失去所有工具支持(拖放式GUI构建,MOTODEV Studio的字符串资源助手等)。
您似乎在所有其他考虑因素之前放置自己的个人技术倾向。如果这是一个小型的个人项目,这可能是一个很好的态度。但是,如果您要创建由其他人开发和/或维护的代码,则需要考虑其他开发人员的需求,并且他们可能比您更加开放XML。
看一下这个由android团队发布的视频:http://www.parleys.com/#st=5&id=2191&sl=8
这都是关于布局的,包括如何使用Java而不是XML来布局应用程序。但是,你被警告说android团队希望你使用XML ...
可以从代码创建所有布局文件。但建议使用布局XML文件。
AndroidManifest.xml
不能被代码替换,因为系统依赖于此文件中包含的数据。
我完全同意Van Coding。如果您使用正确的编程语言,则可以编写比使用AXML更简洁的布局定义。 A C# example how to replace AXML layouts
ViewGroup Layout(ViewGroup layout, IList<View> contents) {
if (contents != null)
foreach (View v in contents)
layout.AddView(v);
return layout;
}
以上是关于Android - 使用纯Java而不是XML创建应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
创建委托 LdapAuthenticationProvider 而不使用 xml 配置,而不是通过 java 代码