做软件开发的,大多都有过频繁修改界面的痛苦经历的,改着改着,一些先知先懒的牛人,就创造了许多应对之道,如大名鼎鼎的MVC模式的应用。
一如Google宣导的简单美学,Android SDK也为我们考虑了界面修改问题,并解决得很简单。采用了目前比较流行的解决方案,即将界面的描述代码,抽取到外部的XML文件中。
继续我们的Hello World项目,我们将原来写在MyActivity.java中的界面代码,抽取到外部的XML文件中。首先,在项目中的res/layout目录下,新建mylayout.xml文件,内容如下:
<linearlayout href="http://schemas.android.com/apk/res/android" xmlns:android="”&lt;a">http://schemas.android.com/apk/res/android”
android:orientation=”vertical”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
>
</linearlayout>
保存,这时,我们打开com.test.R.java看一下,多了一行,R.java文件不能手工修改,这里的内容是由插件自动同步修改的:
public final class R {
public static final class attr {
}
public static final class drawable {
public static final int icon=0×7f020000;
}
public static final class layout {
public static final int main=0×7f030000;
public static final int mylayout=0×7f030001;
}
public static final class string {
public static final int app_name=0×7f040000;
}
}
然后打开MyActivity.java,修改如下:
super.onCreate(icicle);
setContentView(R.layout.mylayout);
R.layout.mylayout会到/res/layout中找到mylayout.xml,并解析,最终生成界面。
运行一下吧,吼吼。
分享到:
相关推荐
1. 提升开发效率:减少重复劳动,将程序员从机械式的代码编写中解放出来。 2. 降低错误率:自动化生成的代码更少出现人为错误,提高代码质量。 3. 适应性好:通过调整输入数据或模板,能适应不同的项目需求和变化...
总的来说,"ios代码自动化工具"通过自动化处理JSON到模型的转换和UI控件的创建,解放了开发者的手动编码工作,让开发流程变得更加流畅。它体现了现代软件工程中"重用"和"自动化"的核心理念,是iOS开发者必备的利器。...
在使用过程中,需要注意的是,UiPath Studio有多个版本,包括社区版(免费)、标准版和企业版,功能和许可权限各不相同。社区版适合初学者和小型项目,而更高级的版本则提供了更多的企业级功能和更好的技术支持。 ...
FairyGUI 一键自动生成代码,解放每次需要自定义获取组件,内置插件UI包,可以自定义修改功能需求。
"动软代码生成器"能够智能地识别项目需求,快速生成如数据访问层(DAL)、业务逻辑层(BLL)、表示层(UI)等各个层次的代码,极大地减轻了开发人员的工作负担,让他们可以将更多精力集中在核心业务逻辑和创新功能的...
通过自动化的代码生成,开发者可以从繁琐的代码编写中解放出来,集中精力在更重要的业务逻辑和用户体验上,从而提升整个项目的质量和完成速度。同时,由于其遵循三层架构,生成的代码易于维护和扩展,对于大型项目尤...
解放生成新版本# generate a buildnpm run build:lib# publish new releasecd projects/lib/distnpm publish规范标准该项目使用Cubo编码样式作为代码参考。 任务 从申请npm start :运行所有任务,初始
目的是尽可能的解放前端生产力,提高页面模块的复用率,并且充分赋予运营人员根据自身需要搭建、维护、发布页面的能力。 bms-web为积木系统的UI端项目,服务端(bms-server)项目尚未开放,并且,对于前端开发者进行...
帮助开发者从传统枯燥的表单代码中解放出来,更多关注业务,快速提高效率,节省研发成本。 目前已经在OA系统、考试系统、报表系统、流程管理等众多项目中得到了广泛使用。 本项目采用 Vue 和 Element 进行页面构建,...
帮助开发者从传统枯燥的表单代码中解放出来,更多关注业务,快速提高效率,节省研发成本。 目前已经在OA系统、考试系统、报表系统、流程管理等众多项目中得到了广泛使用。 本项目采用 Vue 和 Element 进行页面构建,...
Android开发中的UI自动化测试是一种高效且必要的质量保证手段,它能够帮助开发者节省大量手动测试的时间,提升测试覆盖率,确保应用程序在各种用户交互场景下的正确性和稳定性。随着移动应用复杂性的增加,UI自动化...
总的来说,手机自动化工具通过高效、精确的自动化操作,极大地解放了用户的时间,使得我们可以将精力集中在更重要的事务上。随着技术的发展,这些工具的功能会越来越强大,应用场景也会更加广泛。无论你是普通用户...
标题中的"sqllet法撒旦解放了立即离开放到手机里开发离开app"似乎是一种拼写错误或者不清晰的表达,但我们可以将其理解为对SQLite在移动应用开发中使用的一种模糊描述。SQLite是一个轻量级的数据库管理系统,常用于...
【标题】"一个提供文章朗读的Chrome插件解放双眼聆听世界" 描述了这个插件的主要功能,即为用户提供了一种将文字内容转化为语音输出的方式,尤其适用于长时间阅读网络文章时,帮助用户减轻视觉疲劳,通过听觉来获取...
在C#编程中,多线程技术是一种关键的性能优化手段,尤其对于处理耗时操作时,能够确保用户界面(UI)的响应性,避免出现界面卡死的现象。本解决方案将深入探讨如何利用C#的多线程特性来解决这个问题。 一、线程基础...
2、可视化:Rookie Components 提供强大的可视化编辑工具Rookie Editor,界面制作可直接在编辑器中直观设置,实现UI与逻辑分离,解放程序员UI制作痛苦; 3、高性能:Rookie Components 原本设计以简单、高性能为目标...
5. **提高开发效率**:使用CodeSmith三层模板,开发者可以从繁琐的重复性编码工作中解放出来,更多地关注于解决业务问题和创新。这不仅节约了时间,也有助于减少潜在的错误,提高代码质量。 6. **代码一致性**:...
Swing自动测试工具是Java开发领域中用于自动化测试Swing应用程序的框架和库。这些工具旨在帮助开发者提高测试效率,确保Swing应用的功能正确性和稳定性。Swing是Java的一个图形用户界面(GUI)工具包,广泛应用于...
传统的Android应用开发过程中,我们经常需要通过`findViewById`方法来查找并绑定UI元素,这既繁琐又容易出错。自定义注解则可以有效地解决这一问题,使得我们可以优雅地实现视图注入。 注解(Annotation)是Java...
描述中提到的“自动滚动”功能,意味着电子书可以像传统的电子滚动屏一样,自动逐行或逐页展示内容,解放用户的双手,让阅读变得更加轻松。实现这一功能可能需要用到VB中的Timer控件,配合文本框或标签控件来动态...