`
文章列表
 From:https://toutiao.io/shares/1013011/url   在Android(Java)开发中,基本都会遇到java.lang.OutOfMemoryError(本文简称OOM),这种错误解决起来相对于一般的Exception或者Error都要难一些,主要是由于错误产生的root cause不是很显而易见。由于没有办法能够直接拿到用户的内存dump文件,如果错误发生在线上的版本,分析起来就会更加困难。本文从一个具体的案例切入,介绍OOM分析的思路及相关工具的使用。 案例背景   在美团App 7.4~7.7版本期间,美食业务的OOM数量居高 ...
转自:http://weishu.me/2016/01/12/binder-index-for-newer/     毫不夸张地说,Binder是Android系统中最重要的特性之一;正如其名“粘合剂”所喻,它是系统间各个组件的桥梁,Android系统的开放式设计也很大程度上得益于这种及其方便的跨进程通信机制。 理解Binder对于理解整个Android系统有着非常重要的作用,Android系统的四大组件,AMS,PMS等系统服务无一不与Binder挂钩;如果对Binder不甚了解,那么就很难了解这些系统机制,从而仅仅浮游与表面,不懂Binder你都不好意思说自己会Android ...
Android design支持库中的TabLayout一般都用来实现头部Tab的效果,比如: 但是像微信这种底部Tab布局在我们实际项目中还是非常常见的设计,现在我们也可以用TabLayout非常方便的实现。   布局 下面我们开始实现底部Tab,layout布局比较简单,我们只用把TabLayout放置在底部即可
原文出处:http://chenfuduo.me/2015/07/30/TabLayout-of-design-support-library/  在开发中,我们常常需要ViewPager结合Fragment一起使用,如下图:1 我们可以使用三方开源的PagerSlidingTabStrip去实现,或者viewpagerindicator,我一般都偏向前者。现在我们可以使用Design support library库的TabLayout去实现了。最终的效果图: 效果图
https://developer.android.com/reference/android/support/design/widget/TabLayout.html   前言 Google官方在14年Google I/O上推出了全新的设计语言——Material Design。一并推出了一系列实现Material Design效果的控件库——Android Design Support Library。其中,有TabLayout, NavigationView,Floating labels for editing text,Floating Action Button,Snack ...
1.View的滑动简介 View的滑动是Android实现自定义控件的基础,同时在开发中我们也难免会遇到View的滑动的处理。其实不管是那种滑动的方式基本思想都是类似的:当触摸事件传到View时,系统记下触摸点的坐标,手指移动时系统记下移动后的触摸的坐标并算出偏移量,并通过偏移量来修改View的坐标。 实现View滑动有很多种方法,这篇文章主要讲解六种滑动的方法,分别是:layout()、offsetLeftAndRight()与offsetTopAndBottom()、LayoutParams、动画、scollTo与scollBy和Scroller;在下一篇文章我们会详细介绍属性动画。 ...
前言 Android View体系是界面编程的核心,他的重要性不亚于Android四大组件,在这个系列中我会陆续讲到View坐标系、View的滑动、View的事件分发等文章来逐步介绍Android View体系。 1.View简介 View是Android所有控件的基类,同时ViewGr ...

Java常量池理解与总结

    博客分类:
  • Java
 
一.相关概念 什么是常量 用final修饰的成员变量表示常量,值一旦给定就无法改变! final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。 Class文件中的常量池 在Class文件结构中,最头的4个字 ...
Drawable Animation           帧动画能使得你一个接一个的加载一组图片资源来产生动画。这是一种传统的动画方式。通过顺序的播放不同的图片,如同播放一个电影。AnimationDrawable类是Drawable动画(帧动画)的基础。 当你通过代码实现帧动画,你需要使用到AnimationDrawable类的API。而使用一个XML文件列出组成动画的所有帧来实现动画更简单。这种动画的XML文件位于你的Android工程的res/drawable/目录下。这种情况下,XML定义的是动画的帧顺序和每帧持续的时间。           XML文件由<anima ...
View Animation 你能使用view动画系统在Views上实现补间动画。补间动画使用例如开始点、结束点、尺寸、选择和动画的其他常见信息来计算动画。   补间动画能在View对象的内容上执行一系列简单的转换(位置、大小、选择和透明度)。因此,如果你有一个TextView对象,你能移动、选择、放大或者缩小该文本。如果你有一个背景图片,该背景图片也会随着该文本转换和改变。animation package包提供了实现补间动画需要用的所有类。   通过动画指令指令序列来定义补间动画,使用XML或者Android代码来实现动画。像定义一个布局一样,我们推荐使用XML文件来实现补间动 ...
file:///Users/baidu/android-sdk/docs/guide/topics/graphics/index.html Animation and Graphics 使用android提供的强有力的图形功能,例如OpenGL、硬件加速和内置的UI动画,可以使你的应用看起来很炫、执行性能最好。   BLOG ARTICLES Android 4.0 Graphics and ...
ImageView的Scaletype决定了图片在View上显示时的样子,如进行何种比例的缩放,及显示图片的整体还是部分,等等。 设置的方式包括: 1. 在layout xml中定义android:scaleType="CENTER" 2. 或在代码中调用imageView.setScaleType(ImageView.ScaleType.CENTER);   接下来,将对ScaleType的值和对应的显示效果用最直观的方式——真图演示的方法,来进行说明。   首先,是测试使用的原始图片: (Dimensions: 128 * 128)  (Dimens ...
每个人都知道一个 App 的成功,与这个 App 的性能体验有着很密切的关系。但是如何让你的 App 拥有极致性能体验呢?在 DroidCon NYC 2015 的这个分享里,Boris Farber 带来了他关于 Android Api 以及如何避免一些常见坑的经验。带你了解如何缩短启动时间,优化滑动效果,创建更加顺滑的用户体验。 简介 大家好,我是 Boris,现在是 Google 的一枚员工,目前专注于需要高性能的 App。这个分享是我长期以来从错误中,以及在给合作伙伴做咨询的时候攒下的最佳实践。如果你有一个小型的 App,读过之后,会在你的 App 成长阶段起到帮助。 我常常会见到那 ...

常用Linux指令

常见的Linux指令 su super user # 超级管理员用户 $ 普通用户 ls 显示当前目录的文件和文件夹 ls -l:显示文件和文件夹详情 ls -a:显示隐藏文件 d 目录, - 普通文件,c 驱动,l 软链接 cat 猫 查看文件 好奇害死猫 不要去cat二进制文件 复制文件:cat xx > xx mv move 移动文件 常用于文件的重命名:mv 旧名称 新名称 cp copy Linux下的拷贝命令,Android下原生不支持 cat 使用该命令替代,结合重定向进行复制 mkdir make dir: ...
关于draw9patch如何使用,介绍的很详细,图文并茂,收藏下,备忘!   http://www.cnblogs.com/qianxudetianxia/archive/2011/04/17/2017591.html
Global site tag (gtag.js) - Google Analytics