博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android学习笔记2:Hello World程序解析
阅读量:6346 次
发布时间:2019-06-22

本文共 2067 字,大约阅读时间需要 6 分钟。

《第一行代码——Android》郭霖著

更多内容,请访问我的博客

Android Studio与Eclipse的一些不同

Android Studio是基于IDEA的,IDEA 全称IntelliJ IDEA,是java语言开发的集成环境。IDEA与Eclipse有很大的区别,它们主要的不同在中有详细的说明,在此就不赘述了。所以AS新建的时候有new application和new module开发。IDEA没有工作空间这样的说法。具体来说有以下三点:

  1. android studio是单工程的开发模式

  2. android studio中的application相当于eclipse里的workspace概念

  3. android studio中的module相当于eclipse里的project概念

Android Studio目录结构

新建工程项目后切换到“project”模式下的目录结构如下图所示:

目录1.PNG

  • .idea:AS生成的工程配置文件,类似Eclipse的project.properties。

  • app:AS创建工程中的一个Module。

  • gradle:构建工具系统的jar和wrapper等,jar告诉了AS如何与系统安装的gradle构建联系。

  • External Libraries:不是一个文件夹,只是依赖lib文件,如SDK等。

打开“app”折叠项的目录结构如下图所示:

目录2

  • build:构建目录,相当于Eclipse中默认Java工程的bin目录,鼠标放在上面右键Show in Exploer即可打开文件夹,编译生成的apk也在这个目录的outs子目录,不过在AS的工程里是默认不显示out目录的,就算有编译结果也不显示,右键打开通过文件夹直接可以看。

  • libs:依赖包,包含jar包和jni等包。

  • src:包括java代码和资源文件。在src目录下有一个main的分组,同时划分出java和res两个文件夹,java文件夹则相当于Eclipse下的src文件夹,res目录结构则一样。同时在main中还有一个AndroidManifest.xml文件,它记录着App基本信息(Android管理文件)。在src下的 build.gradle则是Module的Gradle构建脚本。

Hello World程序分析

首先打开AndroidManifest.xml文件,从中可以找到如下代码:

这段代码表示对MainActivity这个活动进行注册,没有在AndroidManifest.xml里注册的活动是不能使用的。其中intent-filter里的两行代码非常重要,<action android:name= "android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" />表示MainActivity是这个项目的主活动,在手机上点击应用图标,首先启动的就是这个活动。你在启动时看到的界面,其实就是MainActivity。

然后,打开MainActivity.java。你可以看到MainActivity是继承自Activity的。。Activity是Android系统提供的一个活动基类,我们项目中所有的活动都必须要继承它才能拥有活动的特性。我们来看一下onCreate方法。

protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);}

onCreate()方法是一个活动被创建时必定要执行的方法。方法中的第一行代码很容易理解,就是执行父类中的onCreate()方法。第二行调用了setContentView()方法,就是这个方法给当前的活动引入了一个activity_main布局。R.layout.activity_main是一种引用资源的格式,此处引用了layout中的activity_main布局。(这是在代码中引用资源的格式,在xml中可以通过@xxx/xxxxx的方式来引用。)让我们打开layout中的activity_main.xml看看究竟写了什么吧。

打开activity_main.xml后在左下角选择Text。(当然,Design视图可以让我们可视化地看到layout界面。)

看到代码中有有一个TextView,这是Android系统提供的一个控件,用于在布局中显示文字的。其中text设置为“Hello World!”,这就是我们应用界面上显示的文字了。

转载地址:http://pbjla.baihongyu.com/

你可能感兴趣的文章
openstack ocata版(脚本)控制节点安装
查看>>
【微信公众号开发】获取并保存access_token、jsapi_ticket票据(可用于微信分享、语音识别等等)...
查看>>
在开发中处理海量数据的方法 思路
查看>>
datatable 获取最大值
查看>>
sqlserver2012一直显示正在还原(Restoring)和从单用户转换成多用户模式(单用户连接中)...
查看>>
spark复习总结02
查看>>
李瑞红201771010111《第九周学习总结》
查看>>
[译]ZOOKEEPER RECIPES-Barriers
查看>>
navicat下载安装和激活一分钟完成
查看>>
6_5 一些有用网址
查看>>
NFC 鏈表操作
查看>>
pymongo模块
查看>>
第0次作业
查看>>
思维导图五个关键秘诀
查看>>
Ubuntu里设置python默认版本为python3(转载)
查看>>
快排+折半查找
查看>>
c# GC 新典型
查看>>
ssh bash 通配符
查看>>
seajs在jquery多个版本下引用jquery的插件的方案
查看>>
关于网络上java,php和.net的“口角之争“的一点想法 !
查看>>