自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

与梦同行

少年,留给你奋斗的时间不多了

  • 博客(15)
  • 收藏
  • 关注

原创 Android嵌套滚动(NestedScrolling)总结

嵌套滚动自从Android 5.0开始,谷歌引进了嵌套滚动的机制,来更好跟简单实现嵌套滚动,那什么是嵌套滚到呢,举个例子:场景一,滚到视图里还包含一个滚动视图,即是ScrollView里又包含了一个ScrollView, 如果滚动的范围在里面ScrollView时,我们先让里面的ScrollView滚动,当里面的ScrollView滚动底部或者顶部时在允许外层的ScrollView滚动。场...

2019-03-20 15:21:28 2929

原创 Android Room的详细介绍

Room是谷歌推出的做数据持久化保存的一个库。通过注释手段来实现一个抽象层,跟数据库打交道。官方推荐使用Room代替SQLite,当然如果你对SQLite情有独钟,也可以直接使用SQLite的APIs 先看下官方文档的定义: Room provides an abstraction layer over SQLite to allow fluent database access whi...

2018-06-27 16:26:25 6097

原创 Android DataBinding 基本操作

Android DataBinding 基本操作 DataBinding 可以允许你直接在布局文件中通过表达式来绑定指定的数据,有点类似于前端双向绑定的框架的vue.js。可以减少大量编码方式的绑定数据。使用前的准备要使用DataBinding,将以下代码添加到app的module的build.gradle文件中android { ... dataBi...

2018-06-07 10:28:12 285

翻译 FlexboxLayout的使用

FlexboxLayout 本文是官方文档的翻译FlexboxLayout 是一个库项目,能在Android上实现类似CSS Flexible Box Layout Module 的能力。安装添加以下依赖到你的build.gradle 文件中:dependencies { implementation 'com.google.android:flexbox...

2018-05-24 14:33:45 5533

原创 ConstraintLayout的使用

ConstraintLayout的使用 这篇文章主要根据官方文档的结构,加上自己的理解来介绍它的用法。 ConstraintLayout 翻译过来是约束布局,可以对子view添加各种约束条件达到某种目的,非常灵活。 ConstraintLayout是一个ViewGroup的导出类,可以用灵活的方式来放置部件和确定部件大小。引入依赖开始使用ConstraintLay...

2018-05-24 14:03:25 1216

原创 SwipeRefreshLayout 详细使用介绍

SwipeRefreshLayoutSwipeRefreshLayout是官方提供的下拉刷新解决控件,具有使用简单,灵活等特点。不足的地方,不可以自定义刷新的头部和加载更多功能。不过通过修改SwipeRefreshLayout可以轻松实现这些功能,本文只介绍使用和对各个进行说明。基本使用在xml添加引入SwipeRefreshLayout的代码<?xml versio...

2018-04-28 16:20:36 24105 4

原创 使用Android Studio3.0新功能,加快Android Studio的构建速度

加快Android Studio 构建速度 构建速度直接影响到开发效率,浪费时间即浪费生命,可以通过修改一些配置,优化下构建速度3.0之前的做法通过配置DEX 资源缩短构建时间gradle 添加以下代码android { ... dexOptions { maxProcessCount 4 // this is the default valu...

2017-11-01 18:29:43 4700

原创 升级到Android Studio 3.0遇到的几个错误

升级到Android Studio 3.0遇到的几个错误 上周发布Android Studio 3.0 正式版,新增了许多功能,主要的还是加快构建速度,没升级的小伙伴赶紧升级升级完成后,Android的加载界面换了,耳目一新的感觉 第一次进入时,构建完成后,会提示你升级gradle的版本。点击升级后,会自动升级到gradle 4.1,Android gradle 插件升级到3.0。我遇到了两

2017-10-30 16:47:36 411

原创 给TextView添加行分割线

给TextView添加行分割线思路:通过在TextView onDraw的方法里把行分割线画出来自定义两个属性<declare-styleable name="LineDividerTextView"> <attr name="line_divider" format="reference"/> <attr name="line_divider_height" for

2017-06-08 13:17:59 3360

原创 填填Android lineSpacingExtra 的坑,解决行间距兼容性问题

填填Android lineSpacingExtra 的坑 解决5.0以下设置了 lineSpacingExtra 底部有空白的问题进坑当我们使用TextView显示多行的文字时,为了美观,一般会加上行间距,这时就会用到lineSpacingExtra这个属性。Android 4.4以下,这个属性会影响到最后一行,最后一行也会有个行间距,而在5.0以上不会。一般来说可以通...

2017-05-31 16:57:22 15739 6

原创 onIntercepteTouchEvent()和onTouchEvent()

对于ViewGroup,处理触摸事件有两个很重要的方法onIntercepteTouchEvent()和onTouchEvent() 1. onInterceptTouchEvent(),MotionEvent事件会最先传递到这里,然后根据返回值,是否需要拦截改事件 2. onTouchEvent(),根据需要是否要处理MotionEvent事件onIntercepteTouchEvent()点

2016-09-18 15:01:52 566

原创 apk的classes.dex的校检

为了防止别人很同意就破解自己的应用,在代码添加classes.dex的校检,不通过则不能继续运行,这样增加点破解的难度。有三种方式,一种是通过获取整个app的sha1哈希值,第二种是获取classes.dex的crc32的值,第三种是获取classes.dex的sha1的值思路来源:http://my.oschina.net/u/2323218/blog/406860下

2015-07-07 16:51:41 1904 1

原创 利用异步任务类AsyncTask下载图片,并且带进度对话框

不过多解释了,主要是异步任务类的一个小例子。

2014-05-21 14:32:26 866

原创 ListFragment setDivider的问题

开始时我是这样写的在getListView().setDividerHeight(2);      getListView().setDivider(getResources().getDrawable(R.drawable.listview_divider));发现没有效果网上查了下,正确写法反过来,最好在onActivityCreated方法下添加getList

2014-04-01 09:55:11 1048

原创 Android ListView 分类

从今天起,用此博客来记录自己学Android的一点一滴。第一篇ListView分组,就是每一组有个标题,并且标题的是不可按。先看效果图网上的实现方法很多,归根到底是重写Adatper里getView(),判断该项是组名,还是子项,然后返回不同view就可以了。自认为重写BaseAdapte的getItemViewType和getViewTypeCount即可。附上代码

2014-03-29 21:06:34 887

空空如也

空空如也

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

TA关注的人

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