【答疑解惑】android activity的作用

群友问了一个关于android apk开发中activity的问题,如下:

我们下面要说一下activity的作用:

首先,Activity是Android系统中的四大组件之一,可以用于显示View。Activity是一个与用记交互的系统模块,几乎所有的Activity都是和用户进行交互的,但是如果这样就能说Activity主要是用来显示View就不太正确了。

在深入了解Activity之前,我们先要知道一下MVC设计模式,在JAVAEE中MVC设计模式已经很经典了,而且分的也比较清晰了,但是在Android中,好多人对MVC在Android开发中的应用不是很清楚,下面我就先来介绍一下MVC在Android开发中的应用:

M(Model 模型):Model是应用程序的主体部分,所有的业务逻辑都应该写在这里,在Android中Model层与JavaEE中的变化不大,如:对数据库的操作,对网络等的操作都放在该层(但不是说它们都放在同一个包中,可以分开放,但它们统称为Model层)。

V(View 视图):是应用程序中负责生成用户界面的部分,也是在整MVC架构中用户唯一可以看到的一层,接收用户输入,显示处理结果;在Android应用中一般采用XML文件里德界面的描述,使用的时候可以非常方便的引入,当然也可以使用JavaScript+Html等方式作为View。

C(Controller控制层): android的控制层的重任就要落在众多的activity的肩上了,所以在这里就要建议大家不要在activity中写太多的代码,尽量能过activity交割Model业务逻辑层处理。 好了,在介绍过Android应用开发中的MVC架构后,我们就可以很明确的知道,在Android中Activity主要是用来做控制的,它可以选择要显示的View,也可以从View中获取数据然后把数据传给Model层进行处理,最后再来显示出处理结果。

所以如果我们要启动自己的应用就要继承activity,它的作用就是控制。如果我们想要单纯的显示给用户,那么我们可以继承View来形成我们个性话的View。

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-09-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏向治洪

activty栈管理

题外话:我们有时在开发中,通常会有如下的需求:屏幕1-->屏幕2-->屏幕3-->屏幕4...,现在需要直接从屏幕4-->屏幕1,很多人会想到对activity...

1897
来自专栏我就是马云飞

三大架构的比较

MVC 模型层(Model) 负责存储、检索、操纵来自数据库或者网络的数据 视图层(View) 用户界面,一般采用XML文件进行界面的描述 控制层(Contro...

19510
来自专栏前端小吉米

Android 和 Webview 如何相互 sayHello(一)

在移动时代 Web 的开发方式逐渐从 PC 适配时代转向 Hybird 的 Webview。以前,我们只需要了解一下 PC Chrome 提供的几个操作行为,比...

993
来自专栏青玉伏案

iOS开发之ImageView复用实现图片无限轮播

  在上篇博客中iOS开发之多图片无缝滚动组件封装与使用给出了图片无限轮播的实现方案之一,下面在给出另一种解决方案。今天博客中要说的就是在ScrollView上...

1896
来自专栏phodal

如何在 React Native 实现类微信小程序平台:WebView 调用原生组件

在《我们是如何将 Cordova 应用嵌入到 React Native 中》 一文中,我们简单地介绍了『React Native 重写 Cordova 插件:复...

37010
来自专栏yang0range

MVC的介绍与实践

Controller控制器则由Activity承担,一般情况下会在Activity中获取数据以及界面元素,并将两者进行保定,但是其逻辑不能过于复杂。

592
来自专栏小筱月

跨域 webpack + vue-cil 中 proxyTable 处理跨域

953
来自专栏Golang语言社区

Golang语言 的跨域解决

在使用golang做web的应用程序的时候,最容易碰到跨域问题了,跨域就是www.a.com访问[url]www.b.com[/url]的文件。但是在浏览器里,...

2678
来自专栏Android群英传

上个版本我就改了一行代码!

772
来自专栏IMWeb前端团队

移动端使用原生audio标签制作react 音频组件

需求 要实现音频的播放如下图: ? html html代码如下: <audio src="" preload="metadata" controls /> 本来...

26210

扫码关注云+社区