自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

转载 Android tips一:调整屏幕亮度的方法

转载自:http://blog.csdn.net/hzlxtq123/article/details/53742057最近有一个调整屏幕亮度的需求,在网上找了各种代码,心乱如麻。不是长篇大论说源码的,就是只言片语就上代码的,关键是代码还不能直接用。这里面确实是有一些坑,在这里我会把可以用的代码写出来,并且告诉大家坑在哪里。希望可以帮到大家。经过我的初步分析,屏幕的亮度分为两种情况:

2017-12-30 20:52:45 982

原创 Android扩展控件一:下拉刷新SwipeRefreshLayout

SwipeRefreshLayout是android兼容包中的一个下拉刷新的控件,以前基本都使用XListView或者自己写一个下拉刷新。 下来简单介绍下SwipeRefreshLayout的使用: 1.布局文件:<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/r

2017-12-30 20:00:00 243

原创 Android Studio修改配置,释放C盘空间

如果android studio当时装在C盘,现在又暂时不想重装android studio,可以先把.AndroidStudio2.3文件夹挪到其他盘(D盘),这个目录默认C:\Users[user]\底下,然后修改android studio安装目录下的bin目录下的idea.properties文件:idea.config.path=D:/.AndroidStudio2.3/configid

2017-12-30 11:49:57 1503

原创 Android进阶九:TextView绘制原理之top,bottom,ascent,descent,baseline

top,bottom,ascent,descent,baseline先来看一张图: 文字在绘制的时候,会根据当前的字体,字体大小等信息,确认top,bottom,ascent,descent,baseline的值,这些值会最终影响到字体在TextView中的显示位置, 通过getPaint().getFontMetricsInt()可以获取到这些值baseline:基准点,字符在TextVie

2017-12-23 12:44:23 5807 1

转载 Android性能优化一:布局性能优化

Android渲染机制在开发app的过程中,有时候会发生卡顿,一部分可能是因为内存问题,一些频繁执行的地方,频繁的分配临时变量,触发GC,GC在回收内存的过程中会暂时停止app,导致卡顿,另外一部分可能是由于布局不合理,层次过多,导致不必要的绘制,或者onDraw方法中过于耗时,导致卡顿,这篇先来总结下关于布局的优化,在这之前先来了解下Android的渲染机制,如下图: Android系...

2017-12-15 21:38:05 380

原创 Android进阶八:RecyclerView自动滚动

smoothScrollToPosition()在使用RecyclerView的时候,有一些场景需要RecyclerView能自动滑动到指定的item,这种情况可以调用RecyclerView的以下方法来实现:scrollToPosition(int position)smoothScrollToPosition(int position)这两个方法传入需要滑动到的item的position就可以实

2017-12-11 22:18:14 14743

转载 Android进阶七:RecyclerView拖动滑动之ItemTouchHelper

ItemTouchHelperItemTouchHelper是一个强大的工具,它处理好了关于在RecyclerView上添加拖动排序与滑动删除的所有事情。它是RecyclerView.ItemDecoration的子类,也就是说它可以轻易的添加到几乎所有的LayoutManager和Adapter中。它还可以和现有的item动画一起工作,提供受类型限制的拖放动画等等,类介绍主要涉及到ItemTouc

2017-12-10 21:54:13 9501 2

转载 java基础三:Arraylist和LinkList区别

ArrayList和LinkedList的区别只有有以下几点: 1. ArrayList是基于动态数组的数据结构,LinkedList是基于双向链表的数据结构。 2. 对于随机访问get和set,ArrayList要优于LinkedList,因为LinkedList要移动指针。 3. 对于新增和删除操作add和remove,LinkedList比较有优势,因为ArrayList要移动数据。下面

2017-12-08 21:18:44 302

原创 Android进阶六:Databinding的双向绑定

在Android Studio 2.1 Preview 3之后,官方开始支持双向绑定了。 什么是双向绑定呢? 下面是Data Binding的基本使用:<layout ...> <data> <variable type="com.example.myapp.User" name="user"/> </data> <RelativeLayout ...> <EditT

2017-12-08 15:06:54 4171

转载 Android基础总结十四:Android LayoutInflater原理分析

LayoutInflater类主要是用于加载布局的,刚接触android的时候,只知道加载布局的任务通常都是在Activity中调用setContentView()方法来完成的,其实setContentView()方法的内部也是使用LayoutInflater来加载布局的,只不过这部分源码是internal的,不太容易查看到。LayoutInflater的基本用法1.先获取LayoutInflate

2017-12-07 14:02:43 236

原创 Android NDK笔记3-JNI添加打印信息

开发过程中增加打印信息是必须的,在jni中printf属于linux应用的打印机制,在androd系统当中没有对应的输出机制,只有在终端下执行时才能回显出来,在jni中正确的打印方式应该是 调用NDK 下的log.h 来打印Log 日志,具体方法如下:1.导入log库在build.gradle中加入ldLibs "log":android { defaultConfig {

2017-12-05 22:08:04 1238

转载 Anroid动画总结四:属性动画估值器

上一篇总结了插值器(TimeInterpolator),这一篇来总结下估值器(TypeEvaluator)。插值器的作用:根据时间的流逝百分比(timePercent)计算出当前属性值改变的百分比(propertyPercent)。估值器的作用:根据当前属性改变的百分比(propertyPercent)来计算改变后的属性值(propertyValue)。系统已有的估值器:IntEvaluator:

2017-12-03 17:48:28 278

转载 Anroid动画总结三:属性动画插值器

插值器介绍插值器只是一个概念,系统中与之相关的类叫做 TimeInterpolator ,其只是一个接口,准确来说叫做“时间插值器”。该接口的注释为: A time interpolator defines the rate of change of an animation. This allows animations to have non-linear motion, such as a

2017-12-03 11:22:06 574

原创 Anroid动画总结二:属性动画 ValueAnimator的基本使用

属性动画包括ValueAnimator和ObjectAnimator,上一篇先介绍了属性动画的ObjectAnimator的用法,这一篇来介绍下ValueAnimator的使用。 ValueAnimator是ObjectAnimator的父类,顾名思义,它只对值进行操作,如何需要把它用于view的动画,则需监听它的值的变化来设置view的属性。 ValueAnimator的原理有点类似于Scro

2017-12-03 10:17:46 1636

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除