当前位置: 首页 > 后端技术 > Python

【Android开发入门教程】二、Android应用结构解析

时间:2023-03-25 23:57:55 Python

Java优质资料,Java实战项目,Android开发教程,包括多线程,结构,算法,BATJ面试题等,大牛积累的经验~~~如果需要更多资料,可以加入我们的Java交流学习基地免费获取:_925050116_!!!_1。新建HelloWorld项目:1、打开Eclipse,点击“文件”->“新建”->“项目”-Android应用项目“”:在弹出的“新建Android应用”表单中输入相应的应用名称,Projectname,packagename,选择对应的SDK版本和应用主题:选择项目保存位置,一路“next”完成项目创建:Createdproject:右击创建的项目名称,选择“RunAs””->“AndroidApplication”运行新建的项目:运行结果:2.应用程序目录结构简析:1.应用程序目录结构:2.各部分说明:Activity文件:双击“MainActivity.java”在目录下可以看到MainActivity的代码:onCreate(BundlesavedInstanceState){super.onCreate(savedI实例状态);setContentView(R.layout.activity_main);}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){//展开菜单;如果存在,这会将项目添加到操作栏。getMenuInflater().inflate(R.menu.activity_main,菜单);返回真;}}`从代码中可以看出,MainActivity继承自Activity类。Activity是Android的视图部分,负责处理界面显示。在MainActivity中,重写了父类的onCreate方法和onCreateOptionsMenu方法。在重写的onCreate方法中,方法setContentView(R.layout.activity_main)为MainActivity设置要显示的视图R.layout.activity_main,视图由R类搜索加载(感觉和mvc、Activity等价)到Controller并且需要显示布局相当于一个特定的页面)。R文件:在MainActivity的setContentView(R.layout.activity_main)方法中,我们使用R.layout.activity_main来指定要显示的视图。在应用程序目录结构的截图中,可以看到R文件位于gen目录下。双击显示代码:/*AUTO-GENERATEDFILE。不要修改。**这个类是由*aapt工具根据它找到的资源数据自动生成的。它*不应手动修改。*/packageandroid.basic.helloandroid;publicfinalclassR{publicstaticfinalclassattr{}publicstaticfinalclassdrawable{publicstaticfinalintic_launcher=0x7f020000;}publicstaticfinalclassid{publicstaticfinalintmenu_settings=0x7f070000;stat}publicclassfinalintactivity_main=0x7f030000;}publicstaticfinalclassmenu{publicstaticfinalintactivity_main=0x7f060000;}publicstaticfinalclassstring{publicstaticfinalintapp_name=0x7f040000;publicstaticfinalinthello_world=0x7f040001;publicstaticfinalintmenu_settings=0x7f040002;}publicstaticfinal类样式{/**Base应用程序主题,取决于API级别。在较新的设备上,此主题已被来自res/values-vXX/styles.xml的AppBaseTheme取代。较新的API级别中可用的主题定制可以放在res/values-vXX/styles.xml中,而与向后兼容性相关的定制可以放在此处。API11+的基本应用程序主题。这个主题完全取代了API11+设备上res/values/styles.xml中的AppBaseTheme。API11主题自定义可以在此处进行。API14+的基本应用程序主题。这个主题完全取代了API14+设备上的res/values/styles.xml和res/values-v11/styles.xml中的AppBaseTheme。API14主题自定义可以在此处进行。*/publicstaticfinalintAppBaseTheme=0x7f050000;/**应用程序主题。所有不特定于特定API级别的自定义都可以放在此处。*/publicstaticfinalintAppTheme=0x7f050001;}}'从看到看到看到看到里面类很多,每每有里面里面又有有有有很多有,这些这些这些类类和和变量在我们控件删除控件控件或资源资源文件维护的,由它来调应用程序的各种资源,在代码对第一句的评论还指出“自动生成的文件。请勿修改”布局文件:res/layout/activity_main.xml——布局文件,双击activity_main.xml进入可视化编辑界面,这里可以根据需要选择相应的控件:也可以点击红框输入文字编辑界面直接写对应的控件代码(从截图代码文件可以看出布局由相对布局和文本框组成):AndroidManifest文件:应用目录倒数第四张截图中,你可以看到一个AndroidManifest.xml文件,这是应用程序的配置文件,每个Android应用程序都包含该文件,它向系统描述了程序中包含的组件、实现的功能、可以处理的数据、需要的资源请求等,大致可以看做是网站中的Web.conig文件,也可以用可视化编辑器或者文本编辑器编辑:Android.jar文件:co的功能概述mmonlyusedpackagesinsideAndroid.jar,如下图所示:可以看到Android.jar中包含了很多包,常用包的功能如下:android.app--------providesahigh-级程序模型,提供了一个基本的运行环境android.content--------包括设备上数据的各种访问和发布类android.database--------通过contentproviderandroid浏览和操作数据库.graphics--------底层图形库,包括canvas、colorfilter、point、rectangle,它们可以直接绘制到屏幕上。android.location--------定位及相关服务android.media------提供一些类来管理各种音视频媒体接口android.net------------提供classestohelpnetworkaccess,beyondtheusualjava.net.*interfaceandroid.os------------提供系统服务、消息传输和IPC机制android.opengl--------providesOpenGLtoolsandroid.provider------providesclassestoaccessAndroidcontentprovidersandroid.telephony--providesAPIinteractionsrelatedtomakingcallsandroid.view----------Providesthe基本的用户界面接口框架android.util------------涉及工具类方法,比如时间和日期操作android.webkit--------默认浏览器操作界面android.widget--------包含应用程序屏幕中使用的各种UI元素(大部分是可见的)