首页 > 代码库 > 安卓学习(一)
安卓学习(一)
---恢复内容开始---
res目录 src目录 AdroidManifest.xml是Android项目必须的 其他目录文件都是可选的
----res 目录春发给android项目的各种资源文件,比如layout存放界面布局文件 values目录下存放各种xml格式的资源文件 ,例如
字符串资源文件:Strings.xml
颜色资源文件:colors.xml
尺寸资源文件:dimens.xml drawable-ldpi drawable-mdpi drawable-hdpi drawable-xdpi 这四个子目录则分别用于存放低中高超分辨率四种图片文件
======
代码示例
<resources>
<string name="app_name">HelloWorld</string>
</resources>
安卓项目允许分别在Java代码。xml代码中使用这份资源文件中的字符串资源
--在java代码中使用资源,AAPT为android项目自动生成一个R.java文件,R类里为每份资源分别定义一个内部类,
其中每个资源项对应于内部类里的一个int类型的Field
借助于AAPT自动生成R类的帮助,Java代码中可通过R.string.app_name来引用到“helloWorld”字符串常量
--在xml文件中使用资源更加简单,只要按如下格式来访问
@<资源对用的内部类的类名>/<资源项的名称>
@string/app_name
有一种情况例外,当我们在xml文件中使用标识符时,--这些标识符无需使用专门的资源进行定义,直接在xml文档中按如下格式分配标识符即可
@+id/<标识符代号>
android:id="@+id/ok"
上面代码为该组建分配标识符,就可以在程序中引用该组件
java代码中获得:findViewById()
xml获取:通过资源引用的方式来引用 @+id/<标识符代号>
======
----src目录只是一个普通的。保存java源文件的目录
----AdroidManifest.xml 文件是android项目的系统清单文件,它用于控制android应用的名称。图标。访问权限等整体属性。除此之外 android应用的Activity Service ContentProvider BroadcastRecevier 这四大组建都需要在该文件中配置,它是整个android应用的全局描述文件,它说明了该应用的名称,所使用的图标以及包含的组件等。
--应用程序的包名,该包名将会作为该应用的唯一标识
--应用程序所包含的组件,如Activity,Service,BroadcastReceiver和ContentProvider等
--应用程序兼容的最低版本
--应用程序使用系统所需的权限声明
--其他程序访问该程序所需的权限声明
----build.xml android 为该项目提供一个Ant生成文件。通过该生成文件 可以通过ant生成安装Android项目
-clean 清除项目生成的内容-恢复原来的样子
-debug 打包一个调试用的android应用的apk包,使用debug key进行签名
-release 打包一个发布用的Android应用的apk包。
-test 运行测试 要求该项目必须是一个测试项目
-install 将生成的调试用的apk包安装到模拟器上
-uninstall 从模拟器上卸载该应用程序
----bin 存放生成的目标文件,Java的二进制文件 资源打包文件。.ap_后缀 dalvik虚拟机的可执行性文件 .dex后缀等
----gen 保存自动生成的,位于android项目包下的R.java文件
--R.java文件是由aapt工具根据应用中的资源文件来自动生成的,因此可以把R,java理解成android应用的资源字典
--aapt生成的R.java文件的规则主要是
(1)每个资源对应R类的一个内部类 比如所有界面布局资源对应于layout内部类,所有字符串资源对应于String内部类;所有标识符资源对用于id内部类
(2)每个具体的资源项对应于内部类的一个public static final int 类型的Field,由于drawable-xxxx文件夹里包含了icon.png图片,因此R.drawable类里包含了icon Filed
-----------开发--------------
一、xml格式界面布局
二、相应的Java文件
-------------------------权限说明----------------------
通过为<manifest..../>元素添加<user-permission.../>子元素即可为程序本身声明权限
<user-permission android:name="android.permission.CALL_PHONE"/>打电话的权限
调用
在<activity.../>元素里添加
<user-permission android:name="android.permission.send_SMS"/>发短信
-----------------------------------------------基本组件-----------------
Activity 和View
----Activity通过setContentView(View)来显示指定组件
----View是所有UI控件容器控件的基类,View组件就是与用户交互的,需要放在容器组件中,
或者用Activity将它显示出来 调用setContentView()方法,可以接受一个View对象作为参数
例如 LinearLayout layout =new LinearLayout(this);
//设置该Activity显示layout
setContentView
Activity是Window的容器 Activity包含一个getWindow()发方法,返回该Activity所包含的窗口,对于Activity而言,开发者不需要关心Window对象,如果应用程序不调用Activity的setContentView()来设置该窗口显示的内容,那么该程序将显示一个空窗口
多个Activity组成Activity栈当前活动的Activity位于栈顶
Activity包含了setTheme(int resid) 方法来设置其窗口的风格,
---恢复内容结束---
安卓学习(一)