本文主要详细汇总了Android学习的知识点,有些是Android开发必须要掌握的知识点,有些知识开发中并不常用,但是对于基础概念和关键字,哪怕是我们不使用也是要知道有这个东西的,但对于开发中一定要用的,我们就要对它进行使用总结。
下面就是我学习Android知识相关的一些知识点,这里特意不写详细解释,是为了更好的理清思路,看看学习的实际成效,对于学习过的人是比较有帮助的,对于刚开始学习的也是可以作为参考。
如果有些知识不了解,这里也有提供相关网址的的详细解释。巩固基础,查漏补全,了解并熟悉更多细节知识点。
android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。
Android知识点学习回顾路线
一.基础UI学习
(一)Button按钮
(二)TextView文本框
(三)EditText输入框
(四)CheckBox多选框
(五)RadioButton单选框
(六)Spinner下拉列表
(七)ScrollView滚动视图
(八)ProgressBar进度条
(九)SeekBar拖动条
(十)RatingBar星级评分条
(十一)ImageView图片视图
(十二)GridView网格视图
(十三)ListView列表视图
(十四)ExpandableListView分组列表视图
学习网址:API方便检索http://www.android-doc.com/reference/packages.html
点击右上角的搜索按钮能搜索到Android上的类。
Spinner总结:http://blog.csdn.net/wenzhi20102321/article/details/53573475?locationNum=1&fps=1
ScrollView使用:http://blog.csdn.net/wenzhi20102321/article/details/53491176
ProgressBar使用:http://blog.csdn.net/wenzhi20102321/article/details/53462651
SeekBar使用:http://blog.csdn.net/wenzhi20102321/article/details/53505816
RatingBar使用:http://blog.csdn.net/wenzhi20102321/article/details/53463353
ListView总结:http://blog.csdn.net/wenzhi20102321/article/details/53491293?locationNum=1&fps=1
GridView使用总结:http://blog.csdn.net/wenzhi20102321/article/details/53492112
ExpandableListView使用:http://blog.csdn.net/wenzhi20102321/article/details/53493300
二.六大布局的学习
(一)LinnearLayout线性布局
(二)RelativeLayout相对布局
(三)AbsoluteLayout绝对布局
(四)FrameLayout层(帧)布局
(五)TableLayout表格布局
(六)GridLayout网格布局,这是Android4.0新增的布局.容易和GridView网格视图混淆。
学习网址:
六大布局使用详解http://blog.csdn.net/wenzhi20102321/article/details/52677595?locationNum=12&fps=1
三.四大组件
(一)Activity活动
1.生命周期的七个回调方法
2.四种启动模式
(二)Service服务
1.两个启动方式
2.本地服务和远程服务
3.前台服务和后台服务
(三)BroadCastReceiver广播接受者
1.广播接收者的创建:静态注册和动态注册
2.广播的发送:有序广播和无序广播
(四)ContentProvider内容提供者
1.Uri的理解
2.ContentResolver的理解
(五)Intent数据传递
学习网址:
Activity生命周期总结:http://blog.csdn.net/wenzhi20102321/article/details/52699417
Activity启动模式总结:http://blog.csdn.net/wenzhi20102321/article/details/52852687
Activity数据传递的例子:http://blog.csdn.net/wenzhi20102321/article/details/52750526?locationNum=4&fps=1
Intent和intent-filter:http://blog.csdn.net/wenzhi20102321/article/details/52876648?locationNum=5&fps=1
Service总结:
http://blog.csdn.net/wenzhi20102321/article/details/53155736?locationNum=1&fps=1
BrocadeReceive总结:http://blog.csdn.net/wenzhi20102321/article/details/53127914
ContentProvider总结:
http://blog.csdn.net/wenzhi20102321/article/details/53078861?locationNum=1&fps=1
四.用户交换界面视图
(一)Dialog对话框
1.AlertDialog警告对话框
2.ProgressDialog进度对话框
3.DatePickerDialog日期选择对话框
4.TimePickerDialog时间选择对话框
5.自定义View对话框
(二)Toast吐司
(三)Notification通知
(四)PopupWindow弹出框
(五)ListView列表
(六)GridView网格列表
学习网址:
对话框的详细总结:http://blog.csdn.net/wenzhi20102321/article/details/52818351
吐司的使用总结:http://blog.csdn.net/wenzhi20102321/article/details/52814031
通知的使用总结:http://blog.csdn.net/wenzhi20102321/article/details/52846521
PopupWindow的使用总结:http://blog.csdn.net/wenzhi20102321/article/details/52964116
ListView总结:http://blog.csdn.net/wenzhi20102321/article/details/53491293?locationNum=1&fps=1
GridView使用总结:http://blog.csdn.net/wenzhi20102321/article/details/53492112
五.数据存储
(一)SharePreferences存储
(二)内存存储
(三)文件存储
1.序列化存储
2.本地存储
3.SD卡存储
(四)SQLite数据库存储
(五)网络存储
数据存储的小结:
内存存储将数据存储在内存中,读取速度最快但是不能永久性存储。
文件存储通过Java的IO流将数据以文件的形式存储在磁盘上。
SharedPreferences以固定格式的xml文件的形式将数据存储在磁盘上。
数据库存储一般是指将数据存储到Android自带的sqlite数据库中。
网络存储是将数据传到云端进行存储。(典型应用:网盘)学习网址:
SharePreference存储:http://blog.csdn.net/wenzhi20102321/article/details/53065311?locationNum=3&fps=1
外部存储使用:http://blog.csdn.net/wenzhi20102321/article/details/53100948?locationNum=5&fps=1
内部存储:http://blog.csdn.net/wenzhi20102321/article/details/53066781?locationNum=7&fps=1
数据库存储:
http://blog.csdn.net/wenzhi20102321/article/details/53112523?locationNum=2&fps=1
六.动画
(一)FrameAnimation帧动画
(二)TweenAnimation补间动画
1.TranslateAnimation平移动画
2.ScaleAnimation缩放动画
3.RotateAnimation旋转动画
4.AlphaAnimation渐变动画
(三)PropertyAnimation属性动画
学习网址:
动画总结:http://blog.csdn.net/wenzhi20102321/article/details/52955725
属性动画总结:http://blog.csdn.net/wenzhi20102321/article/details/52971572
七.自定义View,画图
(一)View画图
理解:Color,Paint,Canvas
(二)SurfaceView画图
(三)OpenGL ES画图
学习网址:
自定义View:http://blog.csdn.net/wenzhi20102321/article/details/53395111
图形图像:http://blog.csdn.net/wenzhi20102321/article/details/53420301
八.多媒体和照相机
(一)MediaPlayer多媒体播放器
(二)Camera照相机
学习网址:
音频:http://blog.csdn.net/wenzhi20102321/article/details/53018738
视频:http://blog.csdn.net/wenzhi20102321/article/details/53038711
相机、录音机:http://blog.csdn.net/wenzhi20102321/article/details/53045160
九.高级UI组件
(一)Fragment碎片
(二)ViewFlipper
(三)ViewPager
(四)ActionBar
(五)自定义View
(六)自定义ViewGroup
学习网址:
Fragment使用:http://blog.csdn.net/wenzhi20102321/article/details/53572610
ViewPager使用:http://blog.csdn.net/wenzhi20102321/article/details/53584344
十.网络访问
(一)HttpClient:是Apache提供的。
(二)HttpURLConnection:是谷歌根据Java自带的URLConnection改进的。
(三)Socket:Socket是Java自带的基于TCP/IP的通信工具。
(四)WebView:WebView是基于谷歌chromium内核的一个可以作为浏览器的视图。
注意:Android从4.0开始后就不能在主线程中进行网络操作。
学习网址:
网络相关知识点:http://blog.csdn.net/wenzhi20102321/article/details/53182963
网络插件:http://blog.csdn.net/wenzhi20102321/article/category/6522639
十一.样式开发
(一)shape样式
(二)selector样式
(三)layout-list样式
(四)drawable样式
(五)ViewAnimation样式
(六)PropertyAnimation样式
(七)style样式
学习网址:
字体颜色资源使用:http://blog.csdn.net/wenzhi20102321/article/details/52776356
按钮点击效果示例:http://blog.csdn.net/wenzhi20102321/article/details/52689585
背景选择示例:http://blog.csdn.net/wenzhi20102321/article/details/52685058
十二.多线程和通信
(一)创建新线程
1.实现Runnable接口
2.继承Thread
3.AsyncTask异步任务
(二)通信
1.线程间通信Handler,AsyncTask
2.进程间通信AIDL
学习网址:
Java多线程的使用:http://blog.csdn.net/wenzhi20102321/article/details/52503334?locationNum=3&fps=1
Java线程示例:http://blog.csdn.net/wenzhi20102321/article/details/52524545?locationNum=2&fps=1
Java线程回调方法:http://blog.csdn.net/wenzhi20102321/article/details/52512536?locationNum=1&fps=1
异步任务使用:http://blog.csdn.net/wenzhi20102321/article/details/53098702?locationNum=4&fps=1
Handler机制总结:http://blog.csdn.net/wenzhi20102321/article/details/52837834?locationNum=1&fps=1
Handler总结2:http://blog.csdn.net/wenzhi20102321/article/details/53098943
进程通信AIDL使用:http://blog.csdn.net/wenzhi20102321/article/details/53780757
十三.其他知识点
(一)Android基本架构
(二)Android资源文件
(三)AndroidManifest文件详解
(四)GestureDetector手势识别
(五)TouchEvent事件分发机制
(六)ClipBoard剪切板
十四.Android学习网站
(一)GitHub
https://github.com/
(二)掘金
https://gold.xitu.io/
(三)开源中国码云
http://git.oschina.net/
(四)Android技术优秀csdn博客(不分排名先后)
1.郭霖的专栏
http://blog.csdn.net/guolin_blog/
2.鸿洋
http://blog.csdn.net/lmj623565791
3.李文志(我的!)
http://blog.csdn.net/wenzhi20102321?viewmode=list
4.赵凯强
http://blog.csdn.net/zhaokaiqiang1992
5.任玉刚
http://blog.csdn.net/singwhatiwanna/
6.一叶飘舟
http://blog.csdn.net/jdsjlzx
7.Scott
http://blog.csdn.net/liuhe688
8.张兴业的博客
http://blog.csdn.net/xyz_lmn
9.夏安明
http://blog.csdn.net/xiaanming
10.刘望舒
http://blog.csdn.net/itachi85
本文也是有借鉴别人的网址的总结,可以查看:
http://www.yunsouvip.com/archives/1706
这是我Android相关的知识总结,想要更多其他的知识也可以看我的博客里面有持续更细。写的不对或欠缺的地方也希望大家指出。也欢迎大家留言,让我添加哪些博文,如果我决定合适,我会根据需求写一些特定的文章。