一个Activity代表单个屏幕
Intent
- Intent用于协助应用之间的交互与通讯,也可用于应用程序内部的activity, service和broadcast receiver之间的交互。
- Intent是一种运行时绑定(runtime binding)机制,它能在程序运行的过程中连接两个不同的组件。
- 发送机制
A. Context.startActivity() // Activity.startActivityForResult():传入一个Intent启动一个Activity; Activity.setResult():传入一个Intent从Activity返回结果
B. 将Intent对象传给Context.startService()来启动一个service或者传消息给一个运行的service;将Intent对象传给 Context.bindService()来绑定一个service
C. 将intent对象传给 Context.sendBroadcast(),Context.sendOrderedBroadcast(),或者Context.sendStickyBroadcast()等广播方法,则它们被传给 broadcast receiver显示Intent:指示接收数据的特地目标组件
隐式Intent:指定所需功能,但不指定目标组件
隐式Intent
Intent intent=new Intent(Intent.ACTION_VIEW,operatingdata)
ACTION_VIEW:查看给定数据
ACTION_EDIT:编辑给定数据
ACTION_DIAL:拨打给定号码
intent.resolveActivity(getPackageManager()):此请求将该Intent操作和数据与Intent设备上已安装应用的过滤器相匹配。可以使用它来确保至少有一个Activity可以处理你的请求。
共享功能:
ShareCompat.IntentBuilder类
方法:
### from(this): Activity将启动此share Intent
### setType(): 设置要共享的相的MIME类型
### setChooserTitle():系统应用程序选择器上显示的标题
### setText():要共享的文本
### startChooser():显示系统应用程序选择器并发送
常用的MIME类型:
- 应用程序文件的默认值:application/octet-stream
- 文本文件的默认值:text/plain
- 网页中的CSS文件:text/css
- HTML内容:text/html
关于R文件
当 Android 应用程序被编译,会自动生成一个 R 类,其中包含了所有 res/ 目录下资源的 ID,如布局文件,资源文件,图片(values下所有文件)的ID等。
在Java文件中使用:
- 文本:txtName.getResources().getText(R.string.name)
- 图片:imgIcon.setBackgroundDrawableResource(R.drawable.icon);
- 颜色:txtName.setTextColor(getResouces().getColor(R.color.red));
- 布局:setContentView(R.layout.main);
- 控件:txtName = (TextView)findViewById(R.id.txt_name);
在XML文件中使用
@xx/ 如@string/text_name
Activity的生命周期
onCreate()
onStart()
onPause()
onResart()
onResume()
onStop()
onDestroy()