Android 四大组件

android四大组件分别是:Activity, service,content provider,broadcast receiver

今天就带大家详细的学一波基本功,需要Android架构完整学习资料的朋友可以【直接点击此处】去文件夹取,免费分享大家。

一、Activity

1、概念:

android 中,Activity 相当于一个页面,可以在Activity中添加Button、CheckBox 等控件,一个android 程序有多个Activity组成。

2、生命周期:

3、四中启动模式

Standard 模式 : standard 模式是android 的默认启动模式,在这种模式下,activity可以有多个实例,每次启动Activity,无论任务栈中是否已经存在这个activity的实例,系统都会创建一个新的activity实例。

SingleTop 模式: 栈顶模式,当一个singleTop模式的activity 已经位于栈顶时,再去启动它时,不在创建实例,如果不在栈顶,就会创建实例。

SingleTask 模式 : 单任务模式,如果启动的activity 已经存在于 任务栈中,则会将activity移动到栈顶,并将上面的activity出栈,否则创建新的实例

SingleInstance 模式 :单实例模式,一个activity 一个栈。

4、三种跳转方式

显示启动 :
Intrent 内部直接声明要启动的activity所对应的的class

Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intnet);

隐式启动

进行三个匹配,一个是activity,一个是category,一个是data,全部或者部分匹配,应用于广播原理

清单文件中 里配置activity属性,activity的名字要和跳转内容一样

<activity android:name="com.exanple.android.tst.secondActivity"android:label = @string/title><intent=filter><action android:name="com.exanple.android.tst.secondActivity/><category android:name="android.intent.category.DEFAULT"/><intent-filter/>
</activity>

在需要跳转的地方

Intent intent = new Intent("com.example.android.tst.secondActivity");
startActivity(intnet);

跳转后再返回,能获取返回值

Intent in = new Intent(MainActivity.this,OtehrActivity.class);
in.putExtra("a",a);
startActivityForResult(in,1000);

在OTherActivity中设置返回值

Intent int = new Intent();
int.putExtra("c",c);
setResult(1001,int);
finish();

在MainActivity中获取返回值

@Override
protected void onActivityResult(int requestCode, int resultCode ,Intent data) {super.onActivityResult(requestCode,resultCode,data);if(requestCode == 1000){if(resultCode == 1001){int c = data.getExtra("c",0);}}
}

Service

定义一个Server

项目内Server包 右键 --> New --> Service --> Service 或者直接创建Class类,继承Service并重写IBinder方法

public class MyService extends Service{
<span class="token keyword">public</span> <span class="token class-name">MyService</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">{</span><span class="token punctuation">}</span><span class="token annotation punctuation">@Override</span>
<span class="token keyword">public</span> <span class="token class-name">IBinder</span> <span class="token function">onBind</span><span class="token punctuation">(</span><span class="token class-name">Intent</span> intent<span class="token punctuation">)</span> <span class="token punctuation">{</span><span class="token keyword">return</span> <span class="token keyword">null</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token annotation punctuation">@Override</span>
<span class="token keyword">public</span> <span class="token keyword">void</span> <span class="token function">onCreate</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span><span class="token keyword">super</span><span class="token punctuation">.</span><span class="token function">onCreate</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token annotation punctuation">@Override</span>
<span class="token keyword">public</span> <span class="token keyword">int</span> <span class="token function">onStartCommand</span><span class="token punctuation">(</span><span class="token class-name">Intent</span> intent<span class="token punctuation">,</span> <span class="token keyword">int</span> flags<span class="token punctuation">,</span> <span class="token keyword">int</span> startId<span class="token punctuation">)</span> <span class="token punctuation">{</span><span class="token keyword">return</span> <span class="token keyword">super</span><span class="token punctuation">.</span><span class="token function">onStartCommand</span><span class="token punctuation">(</span>intent<span class="token punctuation">,</span> flags<span class="token punctuation">,</span> startId<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token annotation punctuation">@Override</span>
<span class="token keyword">public</span> <span class="token keyword">void</span> <span class="token function">onDestroy</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span><span class="token comment">// TODO Auto-generated method stub</span><span class="token keyword">super</span><span class="token punctuation">.</span><span class="token function">onDestroy</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>


http://www.taodudu.cc/news/show-4631242.html

相关文章:

  • LSM-Tree(BigTable的理论模型)(转)
  • JS组件系列——Bootstrap组件福利篇:几款好用的组件推荐(二)
  • 团队成员介绍
  • 三明市机器人协会_永安三中斩获三明市青少年机器人竞赛综合技能项目第一名...
  • 算法课程设计:使用Python完成可视化的五子棋AI
  • SQLServer数据库基本操作
  • 【基于Web停车场管理系统——开题报告 分享(仅供参考呀)】
  • 【java毕业设计】基于javaEE+原生Servlet+MySql的Web停车场管理系统设计与实现(毕业论文+程序源码)——停车场管理系统
  • 第二组评分
  • 地铁合作的第二周
  • 地铁合作的第一周
  • java基本语法实验体会_Java基本语法实验报告
  • 赵呆呆,Fight!
  • Win10使用自带工具屏幕录制
  • xbox 屏幕录制配置
  • win7/win10屏幕录制教程?--QVE屏幕录制
  • **Windows10下最便捷的屏幕录制方法**
  • win10计算机记录,如何在win10上记录计算机屏幕,如何在win10上记录屏幕
  • 电脑录屏快捷键是什么?win10自带屏幕录制在哪
  • Win11自带屏幕录制怎么打开?Win11自带录屏的使用方法
  • Win10电脑自带的录屏功能怎么打开?
  • win10录屏功能怎么打开,详细图文教学,轻松学会
  • 最新最全的免费股票数据接口--沪深A股实时融资融券数据API接口(六)
  • 中国恐慌指数VIX(基于沪深300的)
  • 沪深交易所网上、网下发行对比
  • 沪深A股指数最新分时交易数据API接口(JSON标准格式,Get请求方式)
  • 睡眠 应该用 a加权 c加权_创3年新高的创业板,应该如何选择
  • java c 转换_由javac完成的任何类型的转换?
  • 沪深300股票聚类可视化案例||tushare完整可运行代码逐行解释
  • 计算机网络技术 选修 沪科版教案,高中物理第3章从电表电路到集成电路3.5逻辑电路与集成电路教案沪科版选修3_1...

Android 基础四五六之:四大组件详解相关推荐

  1. Android基础四大组件详解

    Android四大组件详解 博主接触Android开发将近一年,从最初的JavaSE开始,到Android基础,一直学的糊糊涂涂,最近想整理一番 android基础, 顺便把自己的学习开发经验分享给大 ...

  2. Android中的四大组件详解

    Android中的四大组件详解 我们都知道Android系统应用层框架中,为开发者提供了四大组件来便于应用的开发,它们是Activity.Service.BroadcastReceiver.Conte ...

  3. Android笔记——四大组件详解与总结

    android四大组件分别为activity.service.content provider.broadcast receiver. -------------------------------- ...

  4. android 广播的权限,Android四大组件详解之BroadcastReceiver广播接收者

    Android四大组件详解---BroadcastReceicer广播接收者 广播有两个角色,一个是广播发送者,另一个是广播接收者. 广播按照类型分为两种,一种是全局广播,另一种是本地广播 全局广播: ...

  5. 亿点点概述Android基础必会的四五六【四大组件 五大存储 六大布局】

    Android 四大组件 五大存储 六大布局 1. Android四大组件 1.1 Activity 1.1.1 概念 1.1.2 生命周期 1.1.3 四种启动模式 1.1.4 三种跳转方式 1.2 ...

  6. Android 基础知识3:四大组件之 Broadcast(广播)

    目录 一.Broadcast 的定义 Broadcast 是一种广泛运用的.在应用程序之间传输信息的机制,Android 中的广播与传统意义上的电台广播类似,一个广播可以有任意个接收者,当然也可能不被 ...

  7. android fragment activity 交互,Android基础之Fragment与Activity交互详解

    今天继续讲解Fragment组件的特性,主要是跟Activity的交互和生命周期的关系,我们前面已经说过Fragment是依赖于Activity的,而且生命周期也跟Activity绑定一起.下面我们看 ...

  8. Android Lifecycle 生命周期组件详解

    转载请标明出处:https://blog.csdn.net/zhaoyanjun6/article/details/99695779 本文出自[赵彦军的博客] 一.Lifecycle简介 为什么要引进 ...

  9. Android应用开发—Intent组件详解

    转载自:Android中Intent组件详解 Intent是不同组件之间相互通讯的纽带,封装了不同组件之间通讯的条件. Intent本身是定义为一个类别(Class),一个Intent对象表达一个目的 ...

最新文章

  1. matlab中,怎样把矩阵中所有的0改为2
  2. 家里宽带628连不上_连不上无线网络?到底是路由器还是电脑的“锅”,看完这篇就知道...
  3. 简单了解Vue的异步请求,axios-0.18.0.js插件实现异步
  4. Django(part23)--Django shell的使用
  5. 团队Alpha冲刺(三)
  6. opencv-api getPerspectiveTransform
  7. 悲哀!面试现场,简单几道java算法题,90%程序员没写出来
  8. tf卡传输可执行程序至linux开发板
  9. Hibernate 入门
  10. NFC模拟门禁卡,不用电脑,将门禁卡等各种卡模拟进手机里,无需root
  11. 计算机怎么开启tftp服务器,Win7系统如何开启TFTP服务器?开启TFTP服务器方法
  12. 军犬舆情每日热点:2018年平均工资出炉;南昌一幼儿园疑喂孩子风油精;英孚教育课程费分期变网贷
  13. 朴实无华,25个常用Matplotlib图的Python模板代码
  14. 整形平台新氧的商标纠纷案背后:商标是创业公司命根子
  15. 【MySQL基本查询】Create(创建), Retrieve(读取),Update(更新),Delete(删除)
  16. app式成语_app式的词语,app的成语都有什么?
  17. 拼多多怎么设置不包邮?怎么看评价?
  18. 浙江小学python教材_PPT、H5、Python、大数据……浙江中小学新教材9月投用!
  19. linux sed替换文件,linux的sed命令替换文件
  20. Linux组RAID5、RAID6、RAID10

热门文章

  1. 小旋风蜘蛛池V9.02源码
  2. 千锋逆战1903班Days13上课代码以及笔记
  3. java实体类生成mysql表_springboot+mybatis通过实体类自动生成数据库表的方法
  4. Asp.Net Ajax (1)---入门篇
  5. 中国无烟尼古丁袋市场深度研究分析报告(2021)
  6. Istio-PilotDiscovery服务的启动
  7. Retinex图像增强算法——SSR,MSR,MSRCR,MSRCP,autoMSRCR
  8. Stata 转 Excel —— export excel 命令详解
  9. 学生上课考勤系统jsp_jsp学生考勤在线请假系统
  10. 【课程汇总】Hello HarmonyOS系列课程,手把手带你零基础入门