Android学习笔记二:activity的理解
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7513290.html
一:activity定义了app的页面
一个app有很多个页面组成,一个页面其实就是一个activity,activity是app的基本组成单元。
那么activity是怎么定义出来的呢?
二:基于MVC模式的activty
学过Web开发的人应该都知道MVC模式:M是模型,是数据;V是视图;C是控制、逻辑。
那么运行在手机上的app同样离不开这三个元素,一个能够实际应用的activity一般都要提供这三种组成元素:
1)M:模型、数据。在上一篇博客中,我们知道res目录下存放的都是资源文件,这些就是activity需要取用的数据了。也就是说,activity要使用的静态数据,我们放在res目录下。【当然,也有动态数据,那些就是在控制层通过网络请求而得来的数据了。】
2)V:视图。我们在创建一个activity时,通常会在res/layout目录下生成一个同名的xml文件,这个,就是该activity的视图文件,也就是在app中的页面。
在该层,我们可以通过拖动式编程快速构造出页面的外形,再通过代码编辑细化各个控件的属性,这样一个页面的外表就搭建起来了。
3)C:逻辑控制层。在上面两层中,我们提供了一个页面需要用到的数据、基本外表。但是怎样组织、使用这些数据和视图元素,就需要在逻辑控制层来定义了。
创建一个activity时,会在java目录的包下生成一个同名的java文件,这个就是该activity对应的逻辑控制层。在该层中,我们可以定义一系列的方法获取网络数据;可以通过id来获取视图控件,为之赋值;可以为视图层控件定义事件响应函数;可以定义该actvity各生命周期的函数......
三:activity的有机组织得到app
通过第二步,我们可以定义一个功能完备的activity。但是,这样定义出来的都是一些独立的页面,我们需要把它们串联起来。
串联有两层意思:
1:动作上的串联:activity之间的跳转,这主要是通过Intent来实现。
2:数据上的串联:activity之间的数据传递,可以通过intent来携带,也可以通过ContentProvider、广播、网络请求等手段来实现。
Android学习笔记二:activity的理解的更多相关文章
- Android学习笔记之Activity详解
1 理解Activity Activity就是一个包含应用程序界面的窗口,是Android四大组件之一.一个应用程序可以包含零个或多个Activity.一个Activity的生命周期是指从屏幕上显示那 ...
- Android学习笔记:Activity生命周期详解
进行android的开发,必须深入了解Activity的生命周期.而对这个讲述最权威.最好的莫过于google的开发文档了. 本文的讲述主要是对 http://developer.android.co ...
- android学习笔记26——Activity
Activity ==> android中四大组件:Activity.Service.BroadcastReceiver.ContentProvider Activity组件用于对用户呈现操作界 ...
- Android学习笔记二之初始Activity
初识Activity,跟着教程学习敲了一遍这一章的内容,下面根据目录结构总结知识点: 一.活动是什么 上篇博文中我们提到了Android四大组件,其中有一个Activity,我们将之称为活动.活动是最 ...
- android学习笔记二、Activity深入学习
一.创建和使用: 1.Activity是android的四大组件之一,需要继承Activity并在清单文件中进行声明才能使用.没有声明则报错. 2.启动Activity是通过Intent,有两种方式: ...
- android学习笔记二
ADT(Android Development Tools)安卓开发工具. android项目目录简介 ==> src==>源代码文件 res==>资源文件 AndroidManif ...
- Android学习笔记4——Activity详解
在 Android 开发过程中,与程序员打交道最多的应该就是作为四大组件之一的 Activity 了.接下来我们就一起来揭开 Activity 的神秘面纱吧~ 一.概述 什么是 Activity(活动 ...
- android学习笔记28——Activity生命周期
Activity生命周期 Activity的活动状态由android已Activity栈的形式管理,当前活动的Activity位于栈顶.随着不同应用的运行,每个Activity都有可能从活动状态转入非 ...
- android学习笔记27——Activity
Activity配置==> android应用程序要求所有的应用程序组件都需要进行显示配置后,才可正常使用.包括:Activity.Service.BroadCastReceiver.Conte ...
随机推荐
- .Net Standard简介
.NET Standard 是一套正式的 .NET API 规范,有望在所有 .NET 运行时中推出. 推出 .NET Standard 的背后动机是要提高 .NET 生态系统中的一致性. ECMA ...
- ASP.NET MVC 中使用JavaScriptResult asp.net mvc 返回 JavaScript asp.mvc 后台返回js
return this.Content("<script>alert('暂无!');window.location.href='/Wap/Index';</script&g ...
- POJO与PO、VO的区别
http://www.cnblogs.com/wangjunwei/p/3859360.html POCO的概念是从java的POJO借用而来,而两者的含义是一致的,不同的仅仅是使用的语言不一样.所以 ...
- 整理:FPGA选型
针对性整理下FPGA选型问题 一.获取芯片资料: 要做芯片的选型,首先就是要对有可能要面对的芯片有整体的了解,也就是说要尽可能多的先获取芯片的资料.现在FPGA主要有4个生产厂家,ALTERA,XIL ...
- 分析器错误消息: 未能找到 CodeDom 提供程序类型
ylbtech-Error-WebForm:分析器错误消息: 未能找到 CodeDom 提供程序类型“Microsoft.CodeDom.Providers.DotNetCompilerPlatfor ...
- 一次问题追查----短字符串签名算法引发的bug
近期开发代码, 出现了一些诡异现象.追查原因是公司使用的签名函数出现的问题. 问题: 代码使用的签名库函数, 对于<=4字节的字符串, 签名就是本身. #include<stdio.h&g ...
- iOS开发-UIScrollView图片无限循环
关于UIScrollView图片浏览的例子有很多,之前也写过类似方面的文章,关于UIScrollView的图片循环在新闻类的App基本上是比较常见的一种情况就是图片浏览,然后根据不同的图片显示不同的内 ...
- 用jstl标签判断一个字符串是否包含了另一个字符串
<c:if test="${fn:contains(str1,str2)}">
- spark 指定相关的参数配置 num-executor executor-memory executor-cores
num-executors参数说明:该参数用于设置Spark作业总共要用多少个Executor进程来执行.Driver在向YARN集群管理器申请资源时,YARN集群管理器会尽可能按照你的设置来在集群的 ...
- VC++深入详解-第四章学习心得
这一章节主要讲解了 简单的绘图 主要是通过一些小的例子让我们学会了VC++的一些基本操作 void CDrawView::OnLButtonDown(UINT nFlags, CPoint point ...