.java文件

activity类

在我们创建自己的项目时,Eclipse会对应用进行设置并将主Activity作为主类——它在项目清单当中也将被作为主Activity进行显示。

这里的Activity类用于使Android系统处理向用户呈现的屏幕内容,而各方法则用于不同变量状态下的屏幕内容(创建、暂停与消除等)。

activity是java文件,用于程序最主要的开发。

public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}
}

以MainActivity类为例,首先要继承Activity类,实现onCreate()抽象方法。其中要调用父类方法super.onCreate(savedInstanceState);,并通过加载布局文件设置布局setContentView(R.layout.activity_main);。注意,要在AndroidManifest.xml文件中声明。

onCreate方法
在主Activity类当中,其中包含的代码将在Activity被创建——也就是应用程序启动时开始执行。

其中setContentView(R.layout.activity_main);用于指定我们所创建的布局文件,告诉Android将其作为内容视图,为Activity创建类文件时,需要利用setContentView进行布局设置。其中的“R”代表应用资源,后面的部分则用于指定保存在“res/layout”目录下的条目类型——在这里就是布局。

Eclipse以及管理系统的ADT都会引用应用中来自Java的资源,在项目中对这些资源进行添加或者编辑时,Eclipse会将对应内容写入“R.java”文件,保存在“gen”文件夹中。
千万不要直接编辑这个文件,它会在我们编辑项目资源时自动生成。系统会通过为应用中的每项资源分配唯一整数ID的形式管理这一过程。
如果Eclipse显示任何与R相关的错误信息,特别是“R无法被解析为一个变量”,则需要检查类文件的起始内容,看看其中是否存在“R”的导入语句,例如“import android.R;”。如果找到了对应内容,特别是在已经将代码复制并粘贴到文件中后,请删除这一导入语句。如果遇到其它与R相关的提示,请确保资源文件当中不存在错误。如果问题仍然存在,尝试利用“Project”, “Clean”清理项目。当一切努力皆告失败时,试着重新启动Eclipse。

框架——资源部分

layout文件夹

显然,layout用于存放各种布局。
创建项目时,Eclipse会提供一套基础布局用于主屏幕的布局方案,供我们进行个性化修改,用户在启动应用之后最先看到的就是它。

在上面的示例中,根元素为RelativeLayout。Android当中还提供其它几种布局类型,我们可以将一种布局嵌套到另一种当中。

查看编辑器右侧的Outline视图,显示的是另一套指向文件元素的界面。双击列出的项目以跳转到对应代码位置,可以展开或者折叠主元素。

切换到Graphical Layout标签,把右上角安卓图标的API调小一点,就可以直接查看自己的布局了。界面左侧的Palette区域允许我们选择UI组件并将其拖动到布局当中。

drawable文件夹

用于保存应用程序所使用的图片文件。这些图片文件可以是我们在Eclipse之外所准备的数字图片文件,格式包括PNG或者JPEG等。或者,大家也可以通过XML代码来描述形状、颜色以及外观,从而定义特定可绘制资源。一旦我们在drawable文件夹中创建了文件,就可以在应用布局文件或者Java代码中进行引用。

资源目录中会保留针对每一种尺寸的drawable文件夹。这些尺寸是各类运行Android系统的设备在像素密度方面的通用型分类依据。具体类别分为低、中、高、超高与超超高密度四种。如果某资源在合适的文件夹下不存在,原则是使用最接近的密度级别。

values文件夹

用于容纳应用程序中所使用的数据值。

可以包含文本字符串以及数字,包含XML文件的值文件会列出其中的一项或者多项值。应用中的其它文件,例如Java类或者布局文件,能够通过这些名称引用这些值。

应用程序中的不同值文件,允许大家针对特定屏幕尺寸及API级别对值进行修改。如果同样的值足以应对多种设备,则可以被直接保存在“Values”文件夹内。

  • demens.xml:定义尺寸资源
  • string.xml:定义字符串资源
  • styles.xml:定义样式资源
  • colors.xml:定义颜色资源
  • arrays.xml:定义数组资源
  • attrs.xml:自定义控件时用的较多,自定义控件的属性
  • theme主题文件,和styles很相似,但是会对整个应用中的Actvitiy或指定Activity起作用,一般是改变窗口外观的。可在Java代码中通过setTheme使用,或者在Androidmanifest.xml中为<application…>添加theme的属性!
    说明:你可能看到过这样的values目录:values-w820dp,values-v11等,前者w代表平板设备,820dp代表屏幕宽度;而v11这样代表在API(11),即android 3.0后才会用到的!

menu文件夹

菜单在以前有物理菜单按钮(即menu键)的手机上用的较多。

raw目录

用于存放各种原生资源(音频,视频,一些XML文件等),可以通过openRawResource(int id)来获得资源的二进制流!

animator:存放属性动画的XML文件

anim:存放补间动画的XML文件

框架——其他

Manifest文件

这个文件将应用程序的各个方面定义成统一整体。Eclipse与ADT会在创建应用的同时,在清单中创建特定元素,具体创建方式取决于在项目创建过程中的设置。
注意:每一个Activity都必须在应用程序清单当中列出。Android中的四大组件,只要定义了,无论用没用,都要在AndroidManifest.xml对这个组件进行声明
(Android 开发的四大组件分别是:活动activity——用于表现功能;服务service——后台运行服务,不提供界面呈现;广播接受者Broadcast Receive——用于接收广播;内容提供者Content Provider——支持多个应用中存储和读取数据,相当于数据库。)

APK文件

当我们在虚拟或者物理设备上编译并运行自己的Android应用时,Eclipse以及ADT会为我们的应用创建一个APK文件,同时将其安装在我们所使用的设备上。APK文件也就是用户们从Google Play商店中所下载的应用文件格式。

【未完待续】

如何自己开发一个Android APP(2)——项目框架相关推荐

  1. android中的插件开发框架,设计并开发一个 Android 的插件化框架

    结合动态加载系列文章的分析,现在开始设计并开发一个 Android 的插件化框架,命名为 Frontia.Frontia 有 "前端" 的意思,寓意着 Android 插件能像前端 ...

  2. 如何自己开发一个Android APP(3)——XML和Android

    XML是一种用于保存数据值的语言. XML是一种标记语言,类似于HTML--如果之前接触过Web开发的话.XML文件利用树状结构作为数据模型.通常来说,一个布局文件拥有一个根布局元素,并将其作为特定布 ...

  3. 开发一个android app需要的技术

    最近一直在忙着工作的事,很久没有更新博客了,今天突发奇想要把自己学到的android方面的知识记录下来,一方面是为了系统的回顾一下知识点自己的学习路线,另一方面希望能帮到更多初学的朋友.学习andro ...

  4. 如何自己开发一个Android APP(4)——JAVA

    资源使用 在java文件中,通过资源id完成对资源的访问.可以通过对象.getId()的方法得到组件. 因为XML布局文件与java文件实际上是不互通的,也就是说我们的xml只控制外观,当你需要为某个 ...

  5. 自己怎么开发一个软件app、如何开发一个app系统软件?

    自己怎么开发一个软件app.如何开发一个app系统软件? ​华盛恒辉开发app软件的办法如下: 1.华盛恒辉首先本人明白需求,懂代码,熟习开发流程. 2.华盛恒辉APP开发后期需求理解产品定位. 3. ...

  6. 小白记录第一个Android APP,VS2019,Xamarin,C#

    小白记录第一个Android APP,VS2019,Xamarin,C# 一.App功能需求及背景 二.参考 三.新建一个项目 四.设计App界面 五.编写代码 六.发布,生成Apk 七.安装测试 八 ...

  7. Apicloud开发新闻类App实战项目-老孟编程

    Apicloud开发新闻类App实战项目-老孟编程 课程名称:Apicloud开发新闻类App实战项目 讲师:孟老师 课程介绍: 技术点包括: 1:vue实现apicloud开发脚手架--超级实用通用 ...

  8. 如何利用spring框架来开发一个简单的小项目——书店项目

    这里我将用spring来开发一个简单的书店项目 Step1:所用到的开发软件为 idea , 所用到的jar包为 这些jar的下载可在 官网 下载,选择5.2.6版本下载,不会的在下面评论私信 Ste ...

  9. Laravel + Dcat admin 开发一个健壮的 erp 项目

    原文地址 : Laravel + Dcat admin 开发一个健壮的 erp 项目 背景 4个月前我写过一篇文章 dcat-admin 开源框架在 erp 项目中的应用 在几个月前我只是用其完成一些 ...

最新文章

  1. 《C语言及程序设计》实践参考——分数的累加
  2. ninja Compiling the C compiler identification source file CMakeCCompilerId.c failed
  3. /src/log4j.xml
  4. 资源系统建设初期数据质量管理
  5. 前端学习(1413):多人管理33修改2(未能完结)
  6. Hystrix dashbord 服务降级熔断限流监控介绍
  7. FRR的ATOMIC 利用GCC的实现
  8. Gephi下载百度云加速,舒服了
  9. 日志:实现微信公众号自动问答机器人(待整理)
  10. Android facebook集成
  11. 洛谷 P4883 mzf的考验 解题报告
  12. tansig、logsig公式与导数推导
  13. php 微信表情存储,轻松处理PHP开发中微信emoji表情mysql存储的问题
  14. HTML5的优势,语法变化以及基础常用标签
  15. (一)掰开了,揉碎了,说经典halcon中的那些算子
  16. 【PHP框架 | Laravel8 系列3】 - 路由
  17. POJ2228 Naptime 【例题精讲】
  18. 计算机文化基础多选,计算机文化基础多选题..pdf
  19. 浏览器右下角广告的一个发现
  20. 网络封包抓取工具 Winpcap

热门文章

  1. 大数据项目实训总结_大数据实习报告.doc
  2. java中lockprocess_java – 使用Processbuilder运行jar无法正常工作
  3. Node.js学习日记3
  4. 快速解决java端口占用
  5. 什么是一方库、二方库、三方库
  6. 你必须知道的 10 个元宇宙最佳案例
  7. Word 在试图打开文件时遇到错误 文档可能已损坏 解决方法
  8. C++ 主函数几种语法
  9. 老年人自学计算机,老人学电脑入门教程 老人怎么学习电脑
  10. 2021年昆明师专附中高考成绩查询,云南省昆明市云南师范大学附属中学2020-2021学年高三高考适应性月考卷(一)语文试题...