android开发学习笔记

合集下载

android核心知识点笔记

android核心知识点笔记

android核心知识点笔记Android核心知识点笔记一、Android基础知识1. Android的发展历程- Android是由Andy Rubin创建的一个开放源代码的移动操作系统,2003年创建,2005年被Google收购,2008年首次推出。

- Android的发展经历了不断的版本迭代,包括Cupcake、Donut、Eclair、Froyo、Gingerbread、Honeycomb、Ice Cream Sandwich、Jelly Bean、KitKat、Lollipop、Marshmallow、Nougat、Oreo、Pie等。

- Android的版本迭代主要包括增加新功能、优化性能、改进用户界面等方面的改动。

2. Android应用的开发流程- Android应用的开发包括需求分析、设计界面、编写代码、调试、测试和发布等阶段。

- 需求分析阶段是确定应用的功能和界面设计的重要阶段,可以根据用户需求绘制原型图、进行用户调研等。

- 设计界面阶段包括绘制应用的界面布局、设计图片资源等。

- 编写代码阶段是根据需求和设计完成应用的逻辑和功能代码的编写,可以使用Java语言和Android SDK提供的API。

- 调试阶段是通过模拟器或真机进行应用的调试和测试,可以检查代码逻辑和界面的运行情况。

- 测试阶段是进行全面的功能测试、性能测试和兼容性测试,确保应用在各种设备上都能正常运行,并修复可能存在的Bug。

- 发布阶段是将应用打包成APK文件并上传到应用商店,供用户下载和安装使用。

3. Android应用的架构- Android应用的架构包括四个主要组件:Activity、Service、Broadcast Receiver和Content Provider。

- Activity是Android应用的界面显示和用户交互的主要组件。

- Service是一个可以在后台运行的组件,可以执行一些长时间运行的任务,如音乐播放、网络下载等。

黑马程序员android开发笔记及源码

黑马程序员android开发笔记及源码

01、什么是3G02、android系统简介03、android背景介绍04、android的framewor简介05、两种虚拟机的比较06、sdk的下载以及简介07、创建android模拟器08、ddms简介09、platform-tools的简介及常见adb指令10、android项目的目录结构11、android下apk安装的过程12、常见的adb指令介绍13、创建模拟器遇到的常见错误14、电话拨号器15、点击事件的四种写法16、短信发送器17、相对布局&单位介绍18、现形布局&布局的组合19、表格布局&绝对布局20、帧布局21、测试相关概念22、android下junit测试框架配置23、logcat简介24、保存文件到手机内存25、android下文件访问的权限26、保存文件到SD卡中27、分析setting源代码获取SD卡大小28、_sharePreference入门29、xml文件的序列化30、采用pull解析xml文件31、采用断电调试的方法观察pull解析的的流程32、android下创建一个sqllite数据库33、sql语句实现数据库的增删改查34、系统api实现数据库的增删改查&Sqlite3工具的使用35、数据库的事物36、listView入门37、采用layoutInflater打气筒创建一个view对象38、采用数据适配器ArryAdapter39、常用数据适配器simpleAdapter40、数据适配器总结41、内容提供者简介42、内容提供者的实现43、短信的备份44、插入一条记录到系统短信应用45、内容观察者46、获取系统的联系人信息47、保存联系人到系统通讯录48、读取联系人的一个小细节49、网络图片查看器50、anr产生的原理&如何避免51、android消息机制入门52、网络html查看器53、字符乱码问题的处理54、采用get方式提交数据到服务器55、采用post方式提交数据到服务器56、提交数据到服务器中文乱码问题的处理57、采用httpclient提交数据到服务器58、异步http框架简介&实现原理59、异步http框架提交数据到服务器60、上传文件到服务器61、smartimageview&常见开源代码62、多线程下载的原理63、多线程断点下载的原理64、多线程java代码移植到android65、多线程下载文本页面的更新66、显示意图激活另一个activity67、隐式意图激活另一个activity68、隐式意图的配置69、隐式意图和显示意图的使用场景70、在不同activity之间数据传递71、activity的声明周期72、activity的启动模式73、activity横竖屏切换的声明周期74、开启新的activity获取他的返回值75、请求码和结果码的作用76、利用广播实现ip拨号77、短信窃听器78、自定义广播时间&发送自定义广播&广播接受者优先级79、采用服务执行长期后台操作80、采用服务窃听电话&服务的声明周期81、android进程优先级&为什么使用服务82、绑定方式开启服务&调用服务的方法83、服务的声明周期(混合开启84、采用aidl绑定远程服务85、代码注册广播接受者&利用广播调用服务的办法86、加载大图片到内存87、获取图片exif信息88、从gallery获取图片89、图片画画板90、扒开美女衣服91、图片的缩放92、图片的旋转93、图片的平移&镜面&倒影效果94、图片的合成95、图片的颜色处理96、多媒体播放api简介97、人脸识别98、mediaplayer的生命周期99、soundpoo简介100、sufaceview的生命周期101、播放在线视频102、视频播放器进度的处理103、调用系统照相机拍照和录像104、采用camera拍照105、常见对话框106、notification入门107、菜单108、android下的样式109、android下的主题110、代码编写ui111、html创建ui112、帧动画113、代码创建创建的tween动画114、xml文件定义动画115、传感器简介116、117、杀死进程118、apk的安装119、应用程序的反编译120、动态创建fragment121、用fragment创建一个选项卡122、fragment的向下兼容性123、fragment的生命周期124、fragment之间的通讯125、应用程序国际化04、android的framewor简介Wap:wait and playWireless Makeup Language(WML)精简的html语言Applications:android自带的基本上层应用Aplication framework:应用程序框架Librarics:Linux lernel:05、两种虚拟机的比较编译后文件格式:jvm:.java->.class->.jardalvik vm:.java->.dex->.odex基于的架构:jvm:基于栈的架构dalvik vm:基于寄存器的架构Cpu直接访问寄存器因此dalvik虚拟机的效率比jvm高06、sdk的下载以及简介->获取sdk工具包(sdk:standard develope kits)->ADT(android develop tools,实际上是eclipse的插件)SDK具体内容Android->SDK Plateform:开发时使用到的jar包->Samples for sdk:->ARM EABI V7a System Image:模拟器运行时的镜像->Intel n86 Aton System:模拟器运行时的镜像->MIPS System Image:模拟器运行时的镜像->google APIs:google提供的jar包,可以直接使用google提供的一些API ->source for android SDK:SDK全部的源代码Extrals:->tools:开发的工具->support library:实现高版本的android向下的兼容->google Admed Ads SDK:gongle提供的广告插件->Analyties App Irackiong SDK:应用的用户分析->cloud message:云消息->gongle play service:收费服务->google USB Driver:真实的设备驱动开发时:基于4.0,兼容2.2、2.3.307、创建android模拟器avd:android virture developerVGA:480*640(电视的标准分辨率)QVGA:240*320(四分之一)HVGA:320*480(一半)WVGA:480*800(width)FWVGA:480*854(更宽)08、ddms简介ddms:模拟器不支持中文,因此发送中文会显示不出来09、platform-tools的简介及常见adb指令Android调试桥:内部实现就是socket让两个系统之间实现数据交互->reset adb:模拟器找不到时候可以重启->adb device:列出所有的连接的设备->adb kill-server:杀死adb调试桥->adb start-server 启动adb调试桥dx.bat:将.class文件打包10、android项目的目录结构一:SDK的目录结构->Samples->Api demo:根据API demo(模拟器上面可以看见)的效果可以在sample中看见相应的代码->Source:jar包所有的sdk源代码都在这个文件夹里->SystemImage:系统镜像->temp:下载更新临时存储的文件夹,一般是空的->tools:emulater.ext 不同版本的模拟器二:New Android Application->theme:留给以后作为扩展,现在并没有太大的作用->target SDK:一般选择高版本,因为高版本对下兼容->mark project as a library:一般不选择,意思是将这个项目提供一个jar包供别人使用三:文件夹目录.setting:设置目录assets:资产目录,存放一些文件,这些文件会被原封不动打包到应用程序的apk中bin:gen:自动生成的目录->builderConfig.java:生成的配置信息->R.java:Android 4.1.2->android.jar开发环境,jar包可以在properties中修改,jar包就是SDK011、Android下apk的安装过程一、Android安装过程分析:->setContentView:甚至view的对象,把里面的xml文件加载到->在project中选择build automaticly会自动把文件生成字节码文件,.class $代表的class文件生成的是内部类->dex.bat文件会把.class文件生成.dex文件->apk压缩文件解压内部内容->META-INF:应用程序的签名eclipse的调试签名文件->res:资源文件->classes.dex:class文件->resources.arsc:资源ID映射->android软件安装的过程:->拷贝xxx.apk带/data/app/xxx-1.apk->在/data/data目录下创建一个文件夹,文件夹名称当前应用程序的报名012、常见adb指令前提:->设备连接上电脑而且驱动安装正常,如果安装不正常的话,会有黄色的问号显示;->设备上打开USB调试;指令:->adb device(如果启动发现这个程序没有安装会自动安装)->adb kill-server->adb start-server->adb uninstall <包名>->adb -s emulator-5554 install c:\\users\\administrator\\hello.apk如果有多个设备的话,如果不指定安装的是哪个设备程序会报错->adb push haha.prop /sdcard/haha.txt 将文件移到(360管家,豌豆荚之类的软件他们也是用的adb指令,倘若电脑上装这些软件的话,会因为两个adb指令抢端口号而挂掉)(adb版本之间兼容不是很好,经常报错可以考虑下版本的问题)->adb shell:远程连接到了android的linux终端ls:显示文件夹ps:显示正在运行的程序ping:网络连通性013、创建模拟器遇到的常见错误->路径最好不要有中文:->应用安装不上,或者安装模拟器的时候开启一个新的模拟器:可能是模拟器的资源被占用,模拟器在运行的时候其实占用着硬盘上面的一个文件,这个文件位于工作空间.android/avd/iphone.avd 里面会有镜像文件,当一个模拟器开启起来了,就给你创建一个文件夹.knock的文件夹,代表着这个模拟器被锁定了,如果把模拟器关掉,就没有程序占据这几个镜像资源了,那么这几个程序就会被自动删除。

安卓入门笔记及开发环境搭建教程

安卓入门笔记及开发环境搭建教程

安卓入门笔记及开发环境搭建教程一、安卓入门笔记安卓(Android)是由Google开发的移动操作系统,目前已经成为手机和平板电脑的主流操作系统之一。

安卓系统基于Linux内核,并且使用Java语言编写应用程序。

学习安卓开发对于想要成为Android开发者的人来说非常重要。

接下来就是一些入门笔记,对于学习安卓开发的初学者非常有用。

1. Java基础安卓开发主要使用Java语言,因此在开始安卓开发之前优先学习Java基础是非常必要的。

关键字、基本数据类型、数组、类、对象、继承、接口、异常处理,这些都是Java语言的基础,必须掌握。

2. 安卓架构安卓系统由四个层次的组件构成:应用层、框架层、系统运行库和Linux内核层。

运行安卓应用程序时,安卓系统会根据应用中声明的组件和与其它组件的交互来执行应用程序。

3. 安卓应用程序生命周期应用程序生命周期指的是应用程序从创建到销毁的整个过程。

安卓应用程序主要分为四个生命周期:活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)、内容提供器(Content Provider)。

4. 安卓UI控件安卓开发需要掌握一些常用的Android UI控件。

例如:TextView(文本框)、Button(按钮)、EditText(文本输入框)、ImageView(图像视图)、LinearLayout(线性布局)、RelativeLayout(相对布局)等等。

5. 安卓资源安卓资源指的是安卓应用程序可能用到的各种文件,例如:图像、音频、视频、布局文件、菜单文件、字符串资源等等。

这些文件需要在应用程序中以特定的方式进行访问。

二、安卓开发环境搭建教程现在,我们已经熟悉了安卓的一些基本概念和相关知识。

接下来,我们需要搭建安卓开发环境,让我们可以开始编写第一个安卓应用程序。

下面是一个简单的安卓开发环境搭建教程:1. 安装Java开发工具包(JDK)在开始安装安卓开发环境之前,需要先安装Java开发工具包。

Android学习笔记(入门必看)

Android学习笔记(入门必看)

Android学习笔记(by quqi99 MSN: quqi99@)Android platform是一个用于开发移动程序的软件包,它包括了操作系统、中间件及一些关键应用。

开发者能使用android SDK为Android platform开发应用,这些应用使用JA V A 语言书写,运行在虚拟机Dalvik(一个专为手机程序开发的基于linux内核的JA V A虚拟机)。

/wiki/index.php?title=%E7%BF%BB%E8%AF%91%E4%BB%BB %E5%8A%A1%E9%A2%86%E5%8F%96&printable=yes/forumdisplay.php?fid=21 什么是Android1.1 Android的特性✓应用框架,让一些基础设施得以重用✓Dalvik虚拟机,专为开发移动程序优化✓集成的浏览器,(基于WebKit引擎)✓优化的图形库,(2D图形库以及基于OpenGL ES 1.0规范的3D图形库)✓SQLite,用于结构化数据的存储,是一个数据库✓多媒体支持,支持多种音频,视频格式(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)✓GSM技术(依赖具体硬件)✓Bluetooth, EDGE, 3G, WiFi(依赖具体硬件)✓Camera, GPS, compass, accelerometer(依赖具体硬件)✓丰富的开发环境(DEBUG工具,内存及性能工具,Ec lipse的插件等)1.2 Android的架构Android操作系统的模块如下:应用:Android已集成了一些应用,如邮件客户端,SMS程序,日历,地图,浏览器等应用框架:程序库:例行程序Linux内核2 Andvoid起步2.1 开发环境配置使用Eclipse + Android Development Tools (ADT)插件。

在Help > Software Updates > Find and Install....中键入更新地址:https:///android/eclipse/2.2 运行第一个Andvoid程序使用Eclipse插件1、建立的工程类型为:Andvoid Project2、建立Launch Configuration. Run > Open Run Dialog... or Run > Open Debug Dialog 命令行运行程序1、创建工程activityCreator .ActivityName2、编译。

Android开发自学笔记(AndroidStudio)—4.1布局组件

Android开发自学笔记(AndroidStudio)—4.1布局组件

Android开发⾃学笔记(AndroidStudio)—4.1布局组件⼀、引⾔Android的界⾯是有布局和组件协同完成的,布局好⽐是建筑⾥的框架,⽽组件则相当于建筑⾥的砖⽡。

组件按照布局的要求依次排列,就组成了⽤户所看见的界⾯。

在Android4.0之前,我们通常说Android开发五⼤布局和四⼤组件,这五⼤布局就是:1. LinearLayout 线性布局2. FrameLayout 单帧布局,也有中⽂翻译为帧布局、框架布局。

3. RelativeLayout 相对布局4. AbsoluteLayout 绝对布局5. TableLayout 表格布局⽽在Android4.0之后⼜新增了⼀种GridLayout⽹格布局。

⼆、LinearLayout线性布局线性布局是Android开发中最常见的⼀种布局⽅式,它是按照垂直或者⽔平⽅向来布局,通过“android:orientation”属性可以设置线性布局的⽅向。

属性值有垂直(vertical)和⽔平(horizontal)两种。

线性布局的排列在某⾏或者某列并不会⾃动换⾏或换列,就是说如果采⽤⽔平布局,控件宽度超过屏幕显⽰的话,后⾯的控件都将被隐藏,不会⾃动换⾏。

常⽤的属性有:1. android:orientation:可以设置布局的⽅向2. android:id - 为控件指定相应的ID3. android:text - 指定控件当中显⽰的⽂字,需要注意的是,这⾥尽量使⽤string.xml4. android:gravity - 指定控件的基本位置,⽐如说居中,居右等位置5. android:textSize - 指定控件当中字体的⼤⼩6. android:background - 指定控件所⽤的背景⾊,RGB命名法7. android:layout_width - 指定控件的宽度8. android:layout_height - 指定控件的⾼度9. android:layout_weight - 指定控件的占⽤⽐例10. android:padding - 指定控件的内边距,也就是说控件当中的内容11. android:sigleLine - 如果设置为真的话,则将控件的内容显⽰在⼀⾏当中layout_weight属性以控制各个控件在布局中的相对⼤⼩。

android移动应用开发技术课第一章笔记

android移动应用开发技术课第一章笔记

android移动应用开发技术课第一章笔记第一章:Android移动应用开发技术课笔记一、引言在当今移动互联网时代,Android系统以其开放性和普及率成为了最受欢迎的移动操作系统之一。

随着移动应用市场的不断扩大,对Android移动应用开发技术的需求也日益增加。

学习和掌握Android移动应用开发技术成为了越来越多人的选择。

二、Android移动应用开发技术概述1. 什么是Android?Android是一款基于Linux操作系统的开源移动设备操作系统,主要用于触摸屏移动设备,如智能手机和平板电脑。

Android操作系统的开放性使得开发者可以自由定制和开发应用,受到了广大用户的喜爱。

2. Android移动应用开发技术的重要性随着信息化和数字化的发展,移动应用成为了人们获取信息和进行交流的重要方式。

而Android作为最主流的移动操作系统之一,其应用的开发和推广具有巨大的市场潜力和商业价值。

掌握Android移动应用开发技术成为了许多开发者和从业者的追求目标。

三、学习Android移动应用开发技术的重要性1. 对于个人的意义学习Android移动应用开发技术可以提升个人的职业技能,并且在移动应用开发领域有更多的发展机会。

可以通过开发自己的应用来实现个人价值和创造财富。

2. 对于企业的意义随着移动互联网的发展,各类企业都希望拥有自己的移动应用,以提升品牌形象和服务用户。

懂得Android移动应用开发技术的人才对企业来说显得格外宝贵。

四、学习Android移动应用开发技术的途径1. 自学通过阅读相关书籍、网上教程和参加线上培训班,可以自学Android 移动应用开发技术。

这种方式需要具备较好的自学能力和毅力。

2. 参加培训班选择权威的培训机构进行系统的学习和培训,可以更快速、系统地学习Android移动应用开发技术。

五、Android移动应用开发技术的未来发展随着人工智能、物联网、区块链等技术的不断发展,Android移动应用开发技术也将不断拓展应用场景和技术深度。

Android初学者学习笔记(自己整理)

Android初学者学习笔记(自己整理)

Android 笔记使用Android 和Eclipse ADT 创建并运行应用程序在 Android 简介的开始部分,我将帮助您尽可能快地创建一个简单的 Android 应用程序。

您将使用 Android 4.2 和 Eclipse Android Development Tools (ADT) 插件来创建一个基于 Java 的 Hello World 应用程序。

为 Android 建立开发环境的途径有两种。

刚接触 Eclipse 和 Android 的开发人员可以先下载ADT (Android Developer Tools) Bundle。

ADT Bundle 捆绑了一个 Android SDK 和一个 Eclipse 版本,其中已经安装了 ADT 插件。

这个程序包可帮助您快速、轻松地使用 Android。

如果 Eclipse 已经安装在台式机上并设置好,那么请手动下载并安装Android SDK。

基础 Android SDK 包含一些可简化 Android 开发的系统工具,但它缺乏开发特定 Android 版本所需的 Android 库。

为您的操作系统下载基础 Android SDK 后,可以访问 SDK 安装目录的工具目录,并运行清单 1中的 Android 脚本。

清单 1. 启动Android SDK Manager~/Development/tools/android/android-sdk-mac_x86/tools$>./android该脚本启动了 Android SDK Manager,您可以下载 Android 的各种版本和库,并创建模拟程序或虚拟设备实例。

Android SDK Manager 打开了一个窗口,其中显示一个很长的要下载的选项的列表,如图 1所示。

图 1. SDK Manager在左侧复选框中,选择Tools,然后选择Android 4.2 (API 17)。

andriod开发笔记

andriod开发笔记

Android开发过程的日记2013.11.11、AndroidManifest.xml文件一般记录了项目中有多少个activity,可以认为成多少界面。

添加一个界面,最好在AndroidManifest.xml文件中添加一个activity,但name写的是处理的java类名。

如:<activityandroid:name="com.example.helloworld.MainActivity"android:label="@string/app_name" ><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="UNCHER" /> </intent-filter></activity><activity android:name="com.example.helloworld.amtl"/>其中包含<intent-filter>为启动的activity。

属性android:name指定java的类。

2013.11.31、在对应的java类中,写明对应的xml布局文件。

实际上就是java对应的界面(activity_main.Xml)。

如:public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(yout.activity_main);final EditText Text1 = (EditText) findViewById(R.id.editText); // 获得句柄final Button Button1 = (Button) findViewById(R.id.button);Button1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {doubled=Double.parseDouble( Text2.getText().toString())+Double.parseDouble( Text3.getText().toS tring());Text1.setText(d+"");}});Button2.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {//startActivity(new Intent(MainActivity.this,amtl.class));startActivityForResult(new Intent(MainActivity.this,amtl.class),flage);finish();}});Button3.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {/*send message*/Uri uri = Uri.parse("smsto:");Intent intent = new Intent(Intent.ACTION_SENDTO,uri);intent.putExtra("sms_body", "android...");startActivity(intent);}});Button4.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View view) {/*phone call */Uri uri = Uri.parse("tel:");Intent intent = new Intent(Intent.ACTION_CALL,uri);startActivity(intent);}});}2、打开窗体Button2.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {//startActivity(new Intent(MainActivity.this,amtl.class));startActivityForResult(new Intent(MainActivity.this,amtl.class),flage);finish();}});实际上,使用startActivity()即可,一个Intent为一个activity,new Intent中两个参数,一个本身的类,写xxx.this即可(xxx问本身的类名),另一个是要调用的类,如amtl.class,实际上在amtl.java的原码中,指明了amtl.java打开哪一个布局文件(即某个窗体)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Android开发学习笔记by---- 三爷一、新建项目Application Name: 应用程序名,即该应用的名称,日后在安卓市场上将显示该App名称,与项目无关。

Project Name:项目中的工程名(项目中的App名),注意,在项目中将使用该名称,该工程将被存放在下面命名的包下,命名时要注意规范。

Package Name:包名,格式为“com.自定义的包名.工程名”,其中包名自定义,但包名后的工程名必须和上面的Project Name一至。

Build SDK:选择android SDK的版本,建议选择1.6版本兼容范围广一点Minimum Required SDK:该程序兼容的最低SDK版本,这里选择的版本必须跟上面选择的Build SDK版本一致。

Activity Name:第一个Activity的名称,随意命名,它将是程序的入口Layout Name:为第一个Activity布局的xml文件名称,随意命名,建议与其对应的activity 名称有一定的关联性。

Title:上面设置的Activity的标题(这个在程序里都可以改)二、项目文件夹说明com.PackageName.ProjectName:该项目的文件夹,里面存放我们编写的源文件gen:由ADT自动生成,其中包含有一个R.java的文件是用于声明res文件夹下的资源的句柄,程序将通过该文件来引用项目中的资源,该文件不要随意改动,。

Android 1.6:这里面是android的SDK包,程序中所有引用android的类都是从这个包里引用;这里的1.6为新建项目时选择的sdk版本号,这里的版本号会根据你新建项目时选择的版本号不同而不同。

bin:这个目录存放编译生成的android安装文件assets:存放项目的资源,比如视频、音频、图片等较大的资源,注意该目录下的资源不会被生成句柄,所以只能通过路径来引用。

res:存放项目的资源,比如图标、图片、音频等,该目录下的资源会被R.java文件自动生成句柄以方便程序引用。

Layout:存放用于布局的xml文件Menu:存放菜单布局文件Values:存放数据存储用的string.xml文件,程序中的一些数据都可以存在这个文件中。

AndroidManifest.xml:整个应用程序的配置文件,包括配置包名、图标、标签、activity 类名以及入口activity等配置,所有的应用程序组件必须在该文件中注册。

所以,每个Activity 必须都先在该文件中注册。

三、Activity1、什么是ActivityActivity是android的一个重要组件,它是人机交互的一个接口,主要用于显示应用程序界面,每个界面都是由一个Activity来显示,也就是说每个界面都有一个Activity。

Activity是一个后台的守护进程,是不可见的,而控件是可见的,我们能够看到的界面都是由添加到该界面的Activity中的控件组成,也就是控件是添加到Activity中,由Activity控制其显示,可以把Activit看作是控件的容器,每个界面都由一个Activity组成,而每个Activity都是由若干个控件组成,所以,我们可以抽象地把Activity看成是一个界面。

每个Activity都必须先在AndroidManifest.xml文件当中注册。

(Activity实际上是android的一个类,我们写的Activity都是在继承该类,所以每个android程序的java源文件名都和其Activity名称一致)2、如何创建ActivityActivity一般是在新建工程源文件的时候创建,也就是在每创建一个android源文件的时候创建;我们所建的Activity是继承于Android类库的一个名为Activity的类,并且要复写onCreate方法。

onCreate方法是每个Activity执行时自动被android系统调用的方法,可以看作是每个Activity执行的一个入口,其功能与每个java类中的main方法类似,不过在android中没有main方法。

创建一个Activity的要点:创建一个继承于android中的Activity的类,类名即为我们创建的activity名复写onCreate方法在AndroidManifest.xml文件中注册我们创建的activity为activity引入布局文件在布局文件中为activity添加控件下面是一个最简单的Activity:/**创建一个名为MainActivity的Activity(当然必须要继承于android的Activity,不然只能说这是一个普通的类)*/publicclass MainActivity extends Activity {@Override//重写onCreate方法,当执行该Activity时将从这里开始执行publicvoid onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); /*调用父类的onCreate方法*/setContentView(yout.activity_main); /*引用R.java文件中的布局文件句柄activity_main,其对应的布局文件是layout上当下同名的xml文件activity_main.xml,这样本activity就可以显示该布局文件中定义的控件了。

*/}}3、如何在AndroidManifest.xml文件中注册Activity<activity android:name=”.ActivityName”A ndroid:label=”@string/app_name”></activity>其中AcivityName是你自己创建的Activity名称,Android:label的值是你的label名称,这里引用的是string中的app_name的值。

如果在<activity>标签中包含<intent-filter>标签则可以用该标签来指明该Activity是整个应用程序的入口,即执行这个android程序时首先执行的是该Activity。

其格式如下:<activity android:name=”.ActivityName”A ndroid:label=”@string/app_name”><intent-filter><action android:name=”android.intent.action.MAIN” /><category android:name=”UNCHER” /></intent-filter></activity>上面的代码要放在<application>和</application>标签之间,这里的ActivityName替换为实际要注册的Activity名称,注意因为这个Activity是程序的入口Activity,所以这里的Android:label的值实际上就是本APP安装到android手机上后显示的图标名称(即应用程序名),这里设置为实际Activity的label值即可。

如果要注册的Activity不是程序的入口,则可以省略<intent-fiter>标签直接通过在<application>和</application>里面加入下面代码进行注册该Activity:<activityandroid:name=".ActivityName"android:label="@string/title_activity_main"></activity>4、什么是控件控件就是我们在界面中所看到的元素,说白了就是android指定的xml标签。

比如一个提交按钮就是一个控件,一个文本显示区域就是一个控件,一个文件编辑区域就是一个控件,一个图像显示区域就是一个控件,和HTML中的元素控件类似。

控件可以无限嵌套。

每个控件其实都对应一个类,比如TextView控件对应TextView 类,所有控件对应的类都是View的子类,我们可以通过findViewById(id)这个方法来返回控件对应类的对象,再通过对象的方法来操作该控件5、如何在Activity中添加视图View控件是添加到Layout的xml文件当的,所以只需在Activity中引用Layout的xml布局文件即可,这样该Activity就包含了其对应布局文件的所有控件。

引用格式如下:setContentView(yout.activity_main);其中activity_main表示对应的布局文件名。

或者setContentView(new MyView(this)); 其中MyView是自定义View6、在Activity中获取控件的对象TextView myTextView = (TextView)findViewById(R.id.myTextViewId); //获取指定id的控件的对象myTextView.setText(“这是本控件显示的内容”); //设置控件的Text属性这里的myTextViewId用实际的id名替换即可,其返回值类型是View,View是android 当中所有控件的父类,但这里演示的是获取文本显示控件的id,所以需要强制类型转换其为TextView类型(控件类型的关键字也就是该控件对应的类名,与该控件的标签名相同),如果获取的是其它类型的控件id,只需要强制转换为对应的控件类型即可。

第二行是为上面获取到的控件重新设置内容。

7、什么是LayoutLayout目录下存放的是一种xml格式的布局文件,用于控制界面(Activity)中控件的布局,其角色相当于Web前端中的HTML+CSS的混合。

所有的控件都是添加到对应的布局文件当中,由该布局文件来控制其显示方式。

Activity是通过引用R.java 当中对应的布局文件来控制其控件的显示方式。

8、如何在Activity中引用Layout文件因为Layout是在res目录下,所以其下的所有资源和文件都在R.java中生成句柄,所以我们只需要引用R.java文件当中对应Layout文件的句柄即可,引用方法是在onCreate方法的第二句也即super.onCreate(savedInstanceState)语句后面添加下列语句即可:setContentView(yout.activity_main);其中的activity_main是对应的Loyout文件在R.java中的键名。

相关文档
最新文档