1.android布局原则:

(1)将可复用的组件抽出来并通过include标签使用。

(2)使用viewstub标签来加载一些不常用的布局。

(3)使用merge标签减少布局的嵌套层次。

http://www.imooc.com/video/3229

2.merge的用法:http://www.imooc.com/video/3230(不设置背景和padding属性)(Framelayout)

3.viewstub惰性加载 一开始加载的时候是不可视的但是不会占用cpu,在逻辑需要显示的时候才会显示,这样做可以节省内存。

4.数据适配器:baseadapter : arrayadapter和simpleadapter都继承自这个baseadapter,当然baseadapter可以单独使用。

5. Lrucache缓存   http://www.imooc.com/video/7893

6.android异步加载: (1)listview滑动停止后才加载可见项。(2)Listview滑动时,取消所有加载项。http://www.imooc.com/video/7898

7.android的四种数据存储方式:(1)sharedPreference(2)SQLITE (3)Content Provider (4)File

8.content provider  给别的应用提供数据的程序。 http://www.imooc.com/video/4040  几个app之间数据共享就要使用contentprovider。

9.广播还包括系统的广播,比如监听我们手机的电量情况。  重要:broadcastreceiver里不能做耗时的操作!!!如果要做耗时操作,要把信息发给service,让service去做。(也不能用子线程去做) http://www.imooc.com/video/4410。

10.广播的分类:(1)普通广播。(2)有序广播。ordered broadcast (3)异步广播(用的不是很多)。这几种广播的特点:http://www.imooc.com/video/4410 。动态注册级别高于静态注册(更早收到)。其中有序广播可以截断广播的继续传递。

11.service的优先级高于activity,也就是说,一旦我内存不足的时候,我会优先释放activity,service很难被杀死。

service运行在主线程,不能用它直接来进行网络请求等耗时工作(可以开线程来做)。

startservice和bindservice的区别。

12.bindservice: serviceconnection http://write.blog.csdn.net/postedit/49055049   播放器可以用service去实现。

13.gestureoverlayview 进行较复杂的手势识别(画一个箭头)。android 自带的例子:gesturebuilder项目可以参考。用gesturebuilder去生成复杂的手势文件。

14.handler封装了消息的发送。http://www.imooc.com/video/5681  Looper是一个死循环,从messagequene取消息,有消息就处理,没有消息就阻塞。

15.非ui线程真的不能更新ui吗? http://www.imooc.com/video/5726

16.tcp/ip三次握手。

17.gson http://www.imooc.com/video/8331

18.debug的效率很高,可以考虑多使用。

19.logcat里的pid代表进程id,tid代表线程id。调试的时候也可以关注一下。

20.notification也是可以取消的。(cancel)

21.android是有menu这个东西的,也就是菜单,之前自己用的不多,可以适当了解一下。 http://www.imooc.com/video/2556

optionsmenu 是选项菜单(qq长按左下角按钮弹出弹窗可能就是选项菜单),一个activity只能对应一个选项菜单。

contextmenu是上下文菜单,(长按弹出一个菜单),contextmenu对应的是一个view,每个view都能关联一个上下文菜单。

submenu 子菜单 (选项菜单中弹出)

22.动画:Tween animation, 变换动画  http://www.imooc.com/video/7361

23.布局动画 http://www.imooc.com/video/7363  listview可以去加载这个布局动画。 animation动画,只是绘制了,但是它的位置还是在原来的地方。(这里可以想到我的项目里的笔的动画)。在这里可以用属性动画去解决这个问题。(连点击的时候也是移动之后的)。

24.动画属性 objectanimator    http://www.imooc.com/video/5448  这一节讲了非常详细的动画播放。

25.扇形菜单动画(一个经典的开锁动画):http://www.imooc.com/video/5449  (属性动画实现)

26.valueanimator 属性动画   http://www.imooc.com/video/5450

27.Android ViewConfiguration  http://www.imooc.com/video/5628   actionbar自己没怎么用过,如果用到了新的界面,可以考虑使用一下~ 这个视频也同样使用了大量的java反射。

28.android 微信6.0界面大概的搭建(http://www.imooc.com/video/5630),以后做到类似的可以先照这样的例子。

29.自定义view  http://www.imooc.com/video/5630

30.防止activity回收与总结: http://www.imooc.com/video/5634

31.实现各种各样的viewpager: JazzyViewPager http://www.imooc.com/video/6101

32.消息提醒的红点,可以考虑用github上的一个库来完成。(badgeview)。

33.命名规范:全局变量例如一个activity的变量都是mActivity。以小写m开头。

34.类似于自己的mainpart,也就是一个主类底下有4个tab栏,viewpager和fragment这两个均可,不过推荐使用fragment。http://www.imooc.com/video/5903

35.viewpagerindicator http://www.imooc.com/video/5905 (仿网易新闻客户端tab标签)

36.layout_weight及常见属性解析,在开发过程中是否自定义过控件,如何自定义控件。 http://www.imooc.com/video/10165

baselinealigned 应对我们weight设置属性后,控件不对齐的问题。一般情况下,weight越大,占用的空间越大。

LinearLayout中的layout_weight属性,首先按照控件中声明的尺寸进行分配,然后剩下的尺寸按照weight进行分配。所以一般情况下我们的layout_width都设置成0dp,然后再用weight进行空间的分配。 layout_weight和weightsum的配合使用。这个课程很好,让自己学到了许多。

所有的layout_这样的属性都是告诉我们的父容器去显示我们的子控件的。

37.联系人相关的app一般都要使用contentprovider去进行联系人数据的增删改查。

38.android flowlayout https://github.com/blazsolar/FlowLayout 可以尝试用flowlayout去实现标签页。

39.单例模式的优化。我在项目里已经用到了家长端的useinfo, 在这个网址:http://www.imooc.com/video/9848,使用synchronized关键词。

40.listview下拉刷新。 http://www.imooc.com/video/2113

41.android activity的横竖屏切换 http://www.imooc.com/video/7463

42.Activity的匿名启动。 http://www.imooc.com/video/7465

43.仿qq的侧滑菜单: http://www.imooc.com/video/4380 (以及多种侧滑效果)

44.自定义viewgroup:1.onmeasure 决定自己的宽和高,还有自己的宽和高 2.onlayout 决定子view的放置的位置

慕课网android 学习笔记相关推荐

  1. Android学习笔记-常用的一些源码,防止忘记了

    Android学习笔记-常用的一些源码,防止忘记了... 设置拨打电话 StringdialUri="tell:"+m_currentTelNumble; IntentcallIn ...

  2. Android学习笔记21:ImageView获取网络图片

    Android平台有3种网络接口可以使用,它们分别是:java.net.*(标准java接口).org.apache(Apache接口)和android.net.*(Android网络接口).本文将使 ...

  3. Android学习笔记(七):多个Activity和Intent

    根据www.mars-droid.com:Andriod开发视频教学,先跳过书本<Beginning Android 2>的几个章,我是这两个资源一起看,需要进行一下同步.先初步了解一下应 ...

  4. Android学习笔记26:图片切换控件ImageSwitcher的使用

    在Windows操作系统中,要查看多张图片,可以通过使用"Windows照片查看器"在"上一张"和"下一张"之间切换,进行多张图片的浏览. ...

  5. Android学习笔记36:使用SQLite方式存储数据

    在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...

  6. Pro Android学习笔记(二九):用户界面和控制(17):include和merge

    xml控件代码重用:include 如果我们定义一个控件,需要在不同的layout中重复使用,或者在同一个layout中重复使用,可以采用include的方式.例如定义my_button.xml如下 ...

  7. Android学习笔记:TabHost 和 FragmentTabHost

    2019独角兽企业重金招聘Python工程师标准>>> Android学习笔记:TabHost 和 FragmentTabHostTabHost命名空间:android.widget ...

  8. 【转】 Pro Android学习笔记(二九):用户界面和控制(17):include和merge

    目录(?)[-] xml控件代码重用include xml控件代码重用merge 横屏和竖屏landsacpe portrait xml控件代码重用:include 如果我们定义一个控件,需要在不同的 ...

  9. Android学习笔记:TabHost 和 FragmentTabHost(转)

    Android学习笔记:TabHost 和 FragmentTabHost(转) 转自:http://www.cnblogs.com/asion/p/3339313.html 作者:Asion Tan ...

最新文章

  1. oracle union 最多_用户来稿:我就是那个在优买计划赚钱最多的男人
  2. innerHTML与innerText
  3. .net core 2.0部署到CentOS7系统
  4. 如何在SSIS的脚本组件中访问变量
  5. php一些错误的显示问题
  6. 测试功能范围_软件测试难学吗?
  7. Java反射机制(Reflection)
  8. 冯诺依曼结构和哈佛结构01
  9. 敢死队核心:{买了就涨指标}
  10. Linux 网卡重新获取IP
  11. 投影幕布尺寸计算器_投影幕布尺寸计算方式
  12. CAD中怎么旋转箭头符号?
  13. eclipse的启动失败提示发生了错误,请参阅日志文件
  14. Latex——数学符号大全
  15. CAS单点登录(http方式)
  16. python多台电脑聊天室_python的多人多功能聊天室
  17. FBI网站被黑致数据泄露?官方称这根本是个骗局
  18. Unreal Engin_画廊制作笔记 _005灯光处理,平行光的设置
  19. android view z总结的好帖子
  20. 在python中调用高德地图(Amap)api

热门文章

  1. Java设计模式之装饰模式(透明装饰模式,半透明装饰模式)
  2. 【大数据AI人工智能】数据智能到底是什么——企业级 DT 数据智能实践详解
  3. Python应用之计算阶乘
  4. mysql监控-常用的mysql监控脚本
  5. 网络攻防需要掌握哪些技术?
  6. (Java实现) 拦截导弹
  7. linux基础(1)-常见指令及权限理解
  8. 优雅的PHP采集框架QueryList
  9. Tensorflow2.0:Faster RCNN 代码详解(一)
  10. H5 直播的疯狂点赞动画是如何实现的?