1、初识Activity
Activity是Android的基本组成部分,是人机交互程序入口;一个Android项目由多个Activity组成,所有的显示组件必须放在Activity上才能进行显示。
(1)Android项目工作区构成

如上图所示,一个Android项目工作区由几部分构成,其中src目录中存放的就是Activity文件;gen下存放的是R文件,R.java中保存了该项目中所有的资源ID;res目录下是存放图片、网页、文本等资源,其中drawable中存放图片,它有高中低三种分辨率的目录,layout是存放xml布局文件,主要用于排列不同的显示组件,values中存放一些资源信息,例如定义数组数据、颜色数据、尺度数据、字符串、样式等,raw中存放一些原生文件,比如视频、音频等,可以使用Resources.getRawResource()方法获得这些资源;AndroidManifest.xml是Android的主要配置文件,用来配置各个组件或者一些访问权限。
(2)简单的Android程序
一个Android项目主要有三方面,一是布局文件,二是Activity,三是资源文件,先在布局文件中写好组件布局,再用Activity调用布局文件进行显示,Activity也还会进行一些人机交互的操作,布局文件和Activity都可以调用资源文件。下面是一个简单的Android程序实例:
首先,建立一个activity_main.xml布局文件,布局中只有两个文本框和一个按钮,代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<TextView
android:id="@+id/mytext"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/mybutton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
建立一个MainActivity.java类,该类继承Activity,调用显示刚才的布局文件,并对其中的一些组件进行控制,代码如下:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);//调用布局文件
TextView text = (TextView)findViewById(R.id.mytext);//根据id获取组件
Button button = (Button)findViewById(R.id.mybutton);
text.setText("id控制TextView组件");//设置文本框内容
button.setText("id控制Button组件");//设置按钮文字信息
}
}
写完一个Activity类之后一定要在AndroidManifest.xml中进行注册,不然会运行报错,这个错误很多人都会粗心大意的犯过,一定要谨记!!!(以后的文章将不再提醒)注册代码如下:
<activity
android:name="com.example.chapter3.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
其中action android:name="android.intent.action.MAIN" />表示该Activity为该项目的主类,这一点类似于C++项目中会有多个cpp文件,但是只有一个程序运行入口文件。该程序运行效果如下:

1、初识Activity的更多相关文章
- 二、Android学习第二天——初识Activity(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 一. Android学习第二天——初识Activity 昨天程序搭建成功以 ...
- android开发------初识Activity
之前我们简单说过,Activity实际上是一个窗体,用来存放我们的程序外观. 我们先来创建一个空的Activity,不加载任何layout.要做的是,定义自己的类,继承android的Activity ...
- 初识Activity
Callback Description onCreate() This is the first callback and called when the activity is first cre ...
- Android学习笔记二之初始Activity
初识Activity,跟着教程学习敲了一遍这一章的内容,下面根据目录结构总结知识点: 一.活动是什么 上篇博文中我们提到了Android四大组件,其中有一个Activity,我们将之称为活动.活动是最 ...
- 浅谈Android之Activity生命周期
Activity作为四大组件之一,出现的频率相当高,基本上我们在android的各个地方都能看见它的踪影,因此深入了解Activity,对于开发高质量应用程序是很有帮助的.今天我们就来详细地聊聊Ac ...
- android开发之路01
一.android系统被分为4个层次:1.最下层的是linux核心,包括多个驱动程序,提供了操作系统应该具备的核心功能:2.在linux核心之上,包括两个部分,一部分是Android Runtime( ...
- Android入门:MVC模式(中)
MVC 模式的最基本概念是分层设计,把我们的代码基于 View(视图).Model(模型).Controller(控制器)进行分类封装,这样做的目的是为了清晰结构,使代码更易维护和扩展. 在上一篇文章 ...
- 0基础学安卓--初识安卓Activity
知识储备:windows+ Android Studio 等环境安装. 安卓中Activity代表页的意思,也就是☞我们手机上当前的整个界面显示,点击按钮等操作可以跳转到另外一个Activity中. ...
- Android四大组件初识之Activity
一.Activity的生命周期 Activity生命周期是一系列方法调用.熟悉各个方法调用时间,我们在创建activity就能根据具体实现选择合适的方法覆盖. 1. 覆盖Activity的生命周期方 ...
随机推荐
- NSMutableAttributedString
开发过程中,经常会遇到动态计算行高的问题, - (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)op ...
- Dynamics CRM 2015-Form之控制Ribbon Button
在上一篇中,我用一个例子,简单介绍了如何添加Ribbon Button,以及如何理解RibbonDiffXml,对这方面还不清楚的,可以先看看这篇博文:Dynamics CRM 2015-Form之添 ...
- Python 接口测试(三)
四:python接口之http请求 python的强大之处在于提供了很多的标准库以及第三库,本文介绍urllib 和第三库的requests. Urllib 定义了很多函数和类,这些函数和类能够帮助我 ...
- mac os x在PC上安装
系统安装之前的准备工作及安装过程简介 前面我们已经提到,苹果电脑虽然已经采用了x86架构的Intel处理器,但其官方并不提供在非苹果电脑上安装Mac OS的支持.所以,要想在普通PC/笔记本电脑上安装 ...
- TCP详解
1. 数据进入协议栈的封装过程 2. TCP连接的三次握手 3. TCP连接的三次握手和关闭时的四次握手 各个状态的意义如下: LISTEN - 侦听来自远方TCP端口的连接请求: SYN-SENT ...
- 简学Python第四章__装饰器、迭代器、列表生成式
Python第四章__装饰器.迭代器 欢迎加入Linux_Python学习群 群号:478616847 目录: 列表生成式 生成器 迭代器 单层装饰器(无参) 多层装饰器(有参) 冒泡算法 代码开发 ...
- SecureCRT文件传输模式
前言 如下图所示,SecureCRT6.5.0 有4种文件传输模式. 1)ASCII:最快的传输模式,但只能传文本 2)Xmodem:非常古老的传输协议速度较慢,但由于使用了CRC错误侦测方法,传输的 ...
- 规范 : disable account
前台的cookies在后台会去拿account出来,之后在filter status = disable的 用户在登入使用界面请求一个ajax,这时发现是401没有权限,这通常是admin把用户的ac ...
- Docker存储驱动之Btrfs简介
简介 Btrfs是下一代的copy-on-write文件系统,它支持很多高级特性,使其更加适合Docker.Btrfs合并在内核主线中,并且它的on-disk-format也逐渐稳定了.不过,它的很多 ...
- XCel 项目总结 - Electron 与 Vue 的性能优化
XCEL 是由凹凸实验室推出的一个 Excel 数据清洗工具,其通过可视化的方式让用户轻松地对 Excel 数据进行筛选. XCEL 基于 Electron 和 Vue 2.0 进行开发,充分利用 E ...