安卓学习(一)

---恢复内容开始---

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) 方法来设置其窗口的风格,

---恢复内容结束---

时间: 2024-10-31 19:23:41

安卓学习(一)的相关文章

安卓学习-界面-布局-RelativeLayout

RelativeLayout相对布局,所有内部的组件都是相对的 XML属性 XML属性 函数 说明 android:gravity setGravity 内部组件的对其方式 android:ignoreGravity setIgnoreGravity 设置哪个组件不受Gravity影响 RelativeLayout.LayoutParams用来设置内部组件的对齐方式 XML属性 说明 android:layout_centerHorizontal 水平居中 android:layout_cent

安卓学习第13课——BaseAdapter

BaseAdapter创建这么一个对象,需要些四个方法. int getCount(); Object getItem(int position); long getItemId(int position);View getView(int position, View convertView, ViewGroup parent);(1)列表中的项数(2)返回值的列表内容(3)获得postion处的列表项的ID(4)该列表项里的组件 package com.example.baseadapter

深入浅出安卓学习相关知识,如何从零学好移动开发

原文发表自我的个人主页,欢迎大家访问 http://purplesword.info/mobile-develop 由于近几年来互联网的飞速发展,安卓和iOS平台的大量普及推广,移动开发在当前是非常热门的一个方向. 有不少同学问我如何学习安卓,要学些什么,难不难学.之前一直没有想好应该怎么回答这个问题,只是简单的说安卓自身门槛不高,并不难学.因为我觉得准确回答一个类似这样的问题往往需要灵感.现在根据我的学习体验,做个大概的总结. 1.我为什么学安卓 我从刚开始接触安卓开发到现在也有两三年的时间了

安卓学习第12课——SimpleAdapter

SimpleAdapter一点也不简单,他的参数就带了5个,天哪,晕了.. 今天学的这个适配器, public SimpleAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to) 看这个大概明白,参数分别是第一个:表示访问整个android应用程序接口,基本上所有的组件都需要,一般都写this(改天研究一下),第二个应该是这个List对象

安卓学习第9课——计时器chronometer

今天学习了钟表及计时器.. 我觉得AnalogClock和DigitalClock直接使用就可以.唯一需要知道的就是AnalogClock是可以修改表盘和分针时针的. 方法是android:dail及android:hand_minute和hand_hour. 下面介绍的是计时器的用法. 首先xml中只要放入一个chronometer和一个按钮即可.为的是是点击启动按钮,开始计时,20s停止. package com.example.chronometer; import android.app

安卓学习随笔 -- 自定义标题栏

在安卓中不喜欢系统默认的标题栏,那么如何让自定义一个自己的标题栏呢. 自定义后的标题栏如下: 首先这里需要定义一个自定义的标题栏布局 title.xml文件 (里边需要两个图片这个很简单) <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fi

Android开发手册 安卓学习教程手册(MtAndroid开发手册)

发布本资料须遵守开放出版许可协议 1.0 或者更新版本. 未经版权所有者明确授权,禁止发行本文档及其被实质上修改的版本. 未经版权所有者事先授权,禁止将此作品及其衍生作品以标准(纸质)书籍形式发行. 如果有兴趣再发行或再版本手册的全部或部分内容,不论修改过与否,或者有任何问题,请联系版权所有者 [email protected]. Android开发者必备学习手册,基础和进阶手册. (MtAndroid开发手册) Android开发手册 安卓学习教程手册(MtAndroid开发手册),布布扣,b

安卓学习第11课——AutoCompleteTextView

...在百度上搜了这么一段.理解了ArrayAdapter的三个参数的用途 1. 这个小例子是要显示一个数组,我们就用ArrayAdapter,数组适配器,数据的数据类型<>是String类型的,数据的数据类型还可以是其他的包括对象类型的 2. ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(ArrayListDemo.this, android.R.layout.simple_list_item

安卓学习第10课——listview

1.普通listview <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" androi

安卓学习第8课——开关ToggleButton、Switch

今天学的是对开关的监听,两种开关ToggleButton和switch <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="ma