Android群英传 读书笔记

Posted by 晓晨DEV的技术博客 on April 27, 2016

第三章 自定义控件详解

1.Activity结构 Activity->PhoneWindow->DecorWindow->TitleView、ContentView

2.MeasureSpec 和测量View有关 MeasureSpec有三种模式 (精确 最大值 unspecified)

3.View中的回调方法

onFinishIndlate() - 》 inflate 完成时候回调;

onSizeChanged()-》组件大小改变时候回调;

4.可以使用postInvalidateDelayed() 来控制重绘时间;

5.在ViewGroup中添加滑动事件可以使用scrollBy()辅助;

第四章 Listview使用技巧

1.可以使用listview.setEmptyView;

2.GestureDetector手势识别类 VelocityTracker滑动速度检测类;

第五章 scroll分析

1.移动View可以使用offsetLeftAndRight()和offsetTopAndBottom()进行移动;

2.scrollTo()表示移动到具体某一个位置,scrollBy()表示移动增量;

3.可以使用Scroller类实现平滑移动;

4.ViewDragHelper来辅助实现滑动;

第六章 Android绘图机制与处理技巧

1.可以在xml直接使用bitmap标签把图片转为Bitmap 2.可以在xml通过layer和layer-list标签实现层的效果 3.可以利用矩阵来修改图像 4.Shader 分为 BitmapShader、LinearGradient、RadialGradient、SweepGradient、ComposeShader 5.SurfaceView的使用场景:频繁的刷新、子线程进行页面刷新

第九章 系统信息与安全机制

  1. 获取系统信息从android.os.BuildSystemProperty两个方面获取
  2. ActivityManager.MemoryInfo内存信息

    alailMem—可用内存

    totalMem—总内存

    threshold—低内存阈值

    lowMemery—是否处于低内存

Debug.MemoryInfo 用于统计进程的内存

Android 5.x 新特性详解

  1. Palette 内置了几种提取色调的种类:
  • Vibrant(充满活力的)
  • Vibrant dark
  • Vibrant light
  • Muted(柔和的)
  • Muted dark
  • Muted light
  1. 在Android 5.x View的z值由 elevation和translationZ组成

  2. 使用Tint着色 Clipping剪裁

  3. Activity过渡动画

  • 进入
  • 退出 进入和退出动画包括
    • explode(分解)
    • slide(滑动)
    • fade(淡出)
  • 共享元素
    • changeBounds – 改变目标视图边界
    • changeClipBounds – 剪裁目标视图边界
    • changeTransform – 改变目标视图缩放比例和旋转角度
    • changeImageTransform – 改变目标图片大小和缩放比例

从ActivityA跳转到ActivityB动画 startActivity(intent,ActivityOptions.makeSceneTransitionAnimation(this),toBundle()) 在ActivityB中设置 getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS)或者在xml中设置<item name= “android.windowContentTransitions”>true</item> 接下来在ActivityB中设置动画效果 getWindow().setEnterTransition(new Explode())


分享