标签:
一、基础知识
android四大组件:Activity,Service,Broadcast Receiver,ContentProvider
Activity:一个活动界面;
Service:没有活动界面的后台程序
Broadcast Receiver:系统广播
ContentProvider:实现数据共享
Intent:用于Activity组件之间的沟通
AVD:Android Virtual Devices 虚拟设备
(AVD的Device选择3.2*QVGA(ADP2)(320*480:mdpi)屏幕比较合适)
ADB:Android Debug Bridge 调试工具
DDMS:Dalvik Debug Monitor Service
文件目录:
src:保存java源代码
gen:保存自动生成的R资源类文件夹
R.java:java源文件和引用资源之间的一个资源索引类
assets:保存原始资源文件
res:保存资源文件,layout保存布局文件,values保存常量值
string.xml:声明系统用到的字符串常量
drawable:保存图片等资源
drawable-hdpi:表示高屏幕密度图片 drawable-mdpi:中等屏幕密度 drawable-ldpi:低级屏幕密度
AndroidManifest.xml:所有组件必须在该文件中声明
二、用户界面
常用布局:
LinearLayout(线性布局)、FrameLayout(帧布局)、TableLayout(表格布局)、
RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)
FrameLayout:层叠排列,第一个添加的组件放在最底下,最后添加的组件在最上面,
上一层的会覆盖下一层的控件。
布局属性:
android:layout_width="match_parent"表示控件宽度为整行
android:layout_height="wrap_content"表示控件高度拉伸至能够显示内容
android:layout_weight 使用比例的方式来指定控件的大小
android:layout_gravity 是用于指定控件在布局中的对齐方式
android:hint="Type something here" 用于在EditText显示提示内容
RelativeLayout属性:
android:layout_above属性可以让一个控件位于另一个控件的上方
android:layout_below表示让一个控件位于另一个控件的下方
android:layout_toRightOf 表示让一个控件位于另一个控件的右侧
视图:
ListView(列表视图)、GridView(网格视图)、Gallery(画廊视图)、WebView(网络视图)
SurfaceView(动画视图)
对话框:
DataPickerDialog(日期对话框)、TimePickerDialog(时间对话框)、AlertDialog(系统提示对话框)
菜单:
Options Menu(选项菜单)、ContextMenu(上下文菜单)、SubMenu(子菜单)
三、Activity
Activity生命周期:
OnCreate():创建活动,加载布局
onStart():由不可见变为可见
onResume():变成可与用户交互
onPause():在系统准备去启动或者恢复另一个活动时候调用?
onStop():变得不可见
onDestroy():销毁
onRestart():重新启动
四、intent
1.显式intent在活动之间跳转(记得在AndroidManifest.xml里注册第二个Activity)
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
startActivity(intent);
2.隐式intent在活动之间跳转(记得在AndroidManifest.xml里注册第二个Activity)
五、BroadcasReceiver
注册广播的方式一般有两种,在代码中注册称为动态注册,在 AndroidManifest.xml 中注册称为静态注册。
动态注册:
1.新建类继承BroadcastReceiver,并重写receive();
2.在Activity的onCreate()里面,实例化IntentFilter,并addAction,然后用registerReceiver()注册;
3.动态注册的广播接收器一定都要取消注册才行,可以在 onDestroy()方法中通过调用 unregisterReceiver()方法来实现的。
静态注册:
1.新建一个类继承BroadcastReceiver,重写onReceive()方法;
2.在AndroidManifest里面对BroadcastReceiver注册,写出<intent-filter>包含的广播信息;
3.在AndroidManifest里面用<uses-permission>声明权限;
3.在Activity里,实例化intent,并用sendBroadcast()发出广播.
由于广播是使用 Intent 进行传递的,因此可以在 Intent 中携带一些数据传递给广播接收器。
如何用Intent在广播内传递数据?
标签:
原文地址:http://www.cnblogs.com/expiator/p/5649230.html