安卓入门
前两天搞了一下安卓开发的入门,写一个简单的安卓界面、加一些按钮输入框之类的。 然后在界面的按钮上添加监听器,实现点击按钮的动作(比如点击按钮在输入框中显示文字),最后用intent来实现两个页面之间的跳转。
不过话说回来,虽然这安卓程序是以java为后台的,但是刚开始编写的时候还是感觉有好多区别。尤其是一个安卓工程和一个java工程之间有挺多区别的。
编写过java程序的人都知道,一个java工程由以下几部分组成: ①.src文件夹(用来存放源代码文件,我们写的代码只要放在这里面就行了) ②.java核心类库(我们要用的系统的类都在里面)
但是一个安卓应用程序工程:
一级目录有【src】、【gen】、【android4.3】、【Android Private Libraries】、【assets】、【bin】、【libs】、【res】、【AndroidManifest.xml】、【ice_launcher-web.png】、【proguard-project.txt】、【project.properies】
【src】:这个目录我们都知道,就是拿来存放java源代码的
【gen】:这个目录不用我们开发人员自己维护,但又是非常重要的目录,用来存放由Android开发工具所生成的目录,该目录下的所有文件都不是我们创建的,而是由ADT自动生成的。其下有一个与我们创建的包名同名的二级目录,下面有一个R.java文件,非常重要,里面的代码都是自动生成,程序的运行离不开这个文件的配置。
【android4.3】、【Android Private Libraries】:这两个目录是用来存放Android自身的所有jar包文件。
Android Private Libraries应该可以理解为和java工程里面的的JRE System Library 即java核心类库起到一样的作用。
【libs】:存放的是android的库文件,貌似很重要,好吧,刚入门,没用过,理解也不深刻。
【assets】、【bin】: 貌似入门的时候都用不到这2个东东,我也没怎么用过,总之是放了很重要的东西,不知道是干嘛用的。
【res】:这个文件相当重要,我们做的安卓页面就是在这里面的layout下面的.xml文件中来设计的。
layout很好理解,就是布局。 一张页面由各种组件构成(按钮、输入框、文字什么的),各种的组件需要一个合理的布局才能组成一张正常的页面,所以就是layout。
一个.xml文件就相当于一张安卓页面。 使用标记语言来编写的,写过html网页的童鞋应该没有很大的难度。
当然,在写页面布局的时候,我们可以通过调用values里面的一些常量值来设计页面。values里面已有dimens.xml、strings.xml、styles.xml 3个文件。很容易理解,strings和dimens是用来存放字符串常量和尺寸常量的。至于style嘛,嘻嘻,没用过,不知道。不过估摸着页差不多。比如我们要用到strings里面的一个叫做hello_world的字符串常量(注意,是常量名叫做hello_world,它的值不一定是这个),name调用的时候只要通过@string/hello_world 就行了。
[
【AndroidManifest.xml】:这个文件的作用相当于应用程序的功能清单,这个文件给Android系统所有关于这个应用程序的基本信息,系统在运行任何程序代码之前必须知道这些信息。所有关于权限的内容都要在这里进行定义。
安卓的编程分为两大块,一块是前端界面的设计编写,另一块是后台java程序的编写。
前面已经介绍了,前端界面就是通过layout里面的.xml文件来设计。 而后台程序文件则存放在src源文件夹下面。 如果把整个安卓程序比喻成一台演出, 则.xml界面就是观众看到的效果,而这些效果需要很多后台人员的支持,这些后台人员就相当于是后台的java程序。并且,在安卓开发中,还有一个很重要的概念,就是activity,顾名思义,就是“活动”的意思。 联系之前的比喻,我们可以把每个activity看做是演出当中的一个“节目”。每个“节目”都会有对应的“舞台布局”和“后台效果”,并且,每个节目都要在节目单上注册过才能登台演出。 而这节目单,也就对应了AndroidManifest.xml文件。
这样子,一个安卓程序的大概结构我们就知道了:前台界面+后台java程序。
运行的时候通过后台的java程序来初始化前台界面。 并且通过后台程序使前台的界面具有各种不同的效果。