自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(143)
  • 资源 (1)
  • 收藏
  • 关注

原创 setMinDate出现java.lang.IllegalArgumentException: fromDate:xxx does not preced toDate: xxx异常的简单解决办法

setMinDate出现java.lang.IllegalArgumentException: fromDate:xxx does not preced toDate: xxx异常的简单解决办法出现这个的原因有可能是你设置的最小日期大于等于当前日期,从源代码来看,最小日期必须不等于当前日期。解决办法:datePicker.setMinDate(System.currentTimeMillis()-...

2018-06-15 10:12:03 367

原创 Android搜索框组件SearchView的使用

一、SearchView概述SearchView是搜索框组件,它可以让用户在文本框内输入文字,并允许通过监听器监控用户输入,当用户输入完成后提交搜索时,也可通过监听器执行实际的搜索。SearchView默认是展示一个search的icon,点击icon展开搜索框,也可以自己设定图标。用SearchView时可指定如下表所示的常见XML属性及相关方法。如果为SearchView增加一个配套的List...

2018-06-08 17:03:05 16417 1

原创 Android 自定义控件 Demo合集

NumberProgressBar(代码家)这个项目可以熟练掌握如何控制view在界面中的位子SmallChart项目包括折线图、曲线图(可填充)、柱状图、扇形图、雷达图的绘制,让你熟练使用draw()相关类。CircleImageView一个圆形的ImageViewPhotoView对ImageView支持各种手势操作,缩放、移动、旋转...熟练掌握手势操作。AndroidSwipeLayout...

2018-06-08 16:54:47 2078 2

原创 Android 优秀文章及开源库推荐

文章1. Android权限机制与适配经验本文主要分享了以下几个知识点的内容,1、Android权限机制关键知识点;2、QQ音乐对于权限的适配经验;3、近段时间以来遇到的一些Android权限方面的问题。推荐指数:四颗星2. Android App启动流程文章从code的角度介绍了从桌面点击App launcher图标到App启动的全过程,有助于深入Android源码,缺陷是文章的代码排版不是很好...

2018-06-01 11:41:10 390

原创 Android知识梳理

1.ActivityActivity的生命周期,正常结束和非正常销毁的生命周期和调用函数及其使用方法; Android Training - 详解Activity生命周期(Lesson 1 - 启动与销毁Activity) Android Training - 详解Activity生命周期(Lesson 2 - 暂停与恢复activity) Android Training - 详解Acti...

2018-06-01 11:36:42 330

转载 Android应用优化方案

前言:前面两篇文章主要是讲关于activity、fragment生命周期方面的总结,这篇文章主要是总结在android应用开发过程的优化方案,还有一些常用的优化工具。优化的方向包括:启动速度、界面流畅性、内存使用情况、apk体积、耗电量、流量等方面。app启动速度1、通过style 设置一个默认的启动图来过度,从交互体验上来提高启动速度2、分析application和首屏的业务逻辑异步初始化第三方...

2018-06-01 11:24:03 451

转载 Android性能优化:如何让App更快、更稳、更省(含内存、布局优化等)

前言在 Android开发中,性能优化策略十分重要因为其决定了应用程序的开发质量:可用性、流畅性、稳定性等,是提高用户留存率的关键本文全面讲解性能优化中的所有知识,献上一份 Android性能优化的详细攻略, 含:优化方向、原因 & 具体优化方案,希望你们会喜欢文章较长,建议预留较长时间阅读 / 收藏目录示意图1. 性能优化的目的性能优化的目的是为了让应用程序App 更快、更稳定 &amp...

2018-05-31 09:50:22 1344

原创 程序包org.apache.http不存在,解决方式

类里提示爆红import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.StatusLine;import org.apache.http.client.HttpClient;import org.apache.http.client.methods.HttpGet...

2018-05-24 15:28:20 4432

转载 【Android 手势冲突】彻底解决RecyclerView与ScrollView滑动冲突问题,并实现RecyclerView悬停导航栏(附demo)

介绍在新一期的需求中,产品要求我们做出和美团某个页面类似的功能,即一个页面包含在scrollView中,上面一个部分放置一些常用的广告banner、宫格tab等,下面放置一个RecyclerView用于展示具体的产品列表。要想实现上述功能,不可避免地要用到ScrollView嵌套RecyclerView。为什么要用RecyclerView?因为下面的产品列表项非常多,有60条,如果一次性加载到内存...

2018-04-19 18:22:48 17857 2

原创 Android开发笔记之notification消息推送 通知栏的实现

消息通知栏的实现我们要通过builder工厂来创建一个notification的对象我们创建一个点击了通知栏消息要跳转到的activityIntent intent = new Intent(context, PlayActivity.class);通过builder对象来设置notification相关的属性值 4.我们要获得notification的管理器通过context.getSystem...

2018-04-03 10:24:37 3091 1

原创 常见的滑动冲突场景及解决方案

常见的滑动冲突场景可以简单分为以下三种:对于场景1,它的处理规则是:当用户左右滑动时,需要让外部的view拦截点击事件,当用户上下滑动时,需要让内部view拦截点击事件,这个时候我们可以根据他们的特征来解决滑动冲突,具体来说就是:根据滑动时水平滑动还是竖直滑动来判断到底由谁来拦截事件。如何知道滑动谁水平滑动还是竖直滑动呢?我们可以通过两点之间的坐标,依据滑动路径和水平方向所形成的夹角,也可以依据水...

2018-03-19 09:44:06 310

原创 Android开发 GitHub 常用开源框架汇总

一、网络库1. RetrofitRetrofit 是 Square 公司研发的网络请求库,也是目前 Android 最流行的 HttpClient 库之一,越来越多的公司开始使用这个请求库,并且可以完美结合 RxJava,就像官网介绍的一样,Retrofit 是一款类型安全的网络框架,基于 HTTP 协议,服务于 Android 和 Java 语言GitHub 地址:R

2017-10-20 11:55:50 566

原创 Android Studio中Git和GitHub使用详解(下篇)

在上一篇文章我们已经介绍了Git和GitHub的相关知识,并带领大家在Android Studio中创建仓库,完成代码的添加、提交以及Push到远程GitHub等基本操作,接下来介绍git的其他的操作。五、将远程Github中的项目拷贝到AS中把Gitbub中的项目拷贝到AS的实用性很强(这里所说的Github是git版本管理服务器的指代),一方面便于多人协同,大家的代码都可以在G

2017-10-20 11:26:24 550

原创 TimeUtils 有关时间处理的工具类

介绍一些关于时间处理的方法,在日常开发中时常用到,已经封装好,末尾有源码下载。获取剩余天数输入结束的时间,格式yyyy-MM-dd,得到剩余的天数,如当前时间是2017-08-08,输入结束的时间为2017-08-12,则得到的结果是4,即到达期限时间剩余4天。/** * 得到剩余天数 * * @param endTime 结束时间 * @return */

2017-10-20 11:15:29 791

原创 系统日志输出工具类

public class AppLogMessageMgr { //是否输出 private static boolean isDebug= true;   /* * 设置debug模式(true:打印日志 false:不打印) */

2017-10-20 10:34:47 559

转载 BottomNavigationView的安卓库

一个增强BottomNavigationView的安卓库。运行效果:使用说明:With ViewPagerAdd ViewBadgerSdk VersioncompileSdkVersion >= 25导入本库Gradle例子:步骤 1. 在工程根目录的 build.gr

2017-10-11 10:00:01 690

转载 Github上README.md文件——Markdown语言详解

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    之前一直在使用github,也在上面分享了不少的项目和Demo,每次创建新项目的时候,使用的都是默认的README.md文件,也不曾对这个文件有过什么了解。但是在看到别人写的项目的README.md里面竟然有图片、链接什么的,就感到很好奇,这效果是什么加上去的?于是便查了一下资料,结果,竟迁出了一

2017-10-10 16:45:22 930

原创 Android Studio快速获取SHA1或MD5的方法

运行你的demo,点击AS展开右侧Gradle功能区;点击项目名,点击Tasks,点击android,用力双击signingReport,在下方Run区域查看自己想要的东西~

2017-10-10 16:41:06 1796 2

原创 Android 获取WebView的HTML图片点击及查看

图示:项目的知识点:加载网页后如何捕捉网页中的图片点击事件;获取点击的图片资源后进行图片显示,获取整个页面所有的图片;支持查看上下一张的图片以及对图片缩放显示;对图片进行保存;其他:图片缓存的处理(不用每次都重新加载已查看过的图片)项目代码结构:前期准备(添加权限、依赖和混淆设置):添加权限: 添加依赖:compile 'com

2017-09-21 17:26:20 3931 1

转载 RecycleView详解

原文:腾讯Bugly(http://bugly.qq.com) 导语RecyclerView是Android 5.0提出的新UI控件,可以用来代替传统的ListView。Bugly之前也发过一篇相关文章,讲解了 RecyclerView 与 ListView 在缓存机制上的一些区别:Android ListView 与 RecyclerView 对比浅析--缓存机制

2017-09-19 17:40:54 865

原创 Android开发过程中的一些小问题

// 获取屏幕密度(方法1)              int screenWidth  =getWindowManager().getDefaultDisplay().getWidth();       // 屏幕宽(像素,如:480px)              int screenHeight =getWindowManager().getDefaultDisplay().

2017-09-18 19:32:15 2359

原创 Android中线程详解

如何理解线程在操作系统中,线程是操作系统调度的最小单元,同时线程又是一种受限的系统资源,即线程不可能无限制的产生,并且线程的创建和销毁都会有相应的开销,当系统中存在大量的线程时,系统会通过时间片轮转的方式调度每个线程,在这么多线程中有一个被称为主线程,主线程是指进程所拥有的线程,在JAVA中默认情况下一个进程只有一个线程,这个线程就是主线程。主线程主要处理界面交互相关的逻辑,因为用户随时会和界

2017-09-13 11:41:03 362

原创 Java中获取当前系统的时间的方法

一. 获取当前系统时间和日期并格式化输出:import java.util.Date;import java.text.SimpleDateFormat;public class NowString {public static void main(String[] args) { SimpleDateFormat df = new SimpleDateFormat("

2017-08-31 16:48:20 322

原创 Retrofit使用教程

前言本文中的Retrofit均指代Retrofit2.0。本文涉及到的代码以及测试使用的接口可在Github上找到。测试接口服务器在 server 项目下,直接运行 RESTServer.main() 即可启动测试服务器,所面代码示例均使用该接口(接口地址 http://localhost:4567/ ).当然你也可以自己借助 json-server 或 最新开源的Parse

2017-08-17 11:30:28 518

原创 OkHttp使用教程

Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient。关于HttpURLConnection和HttpClient的选择>>官方博客尽管Google在大部分安卓版本中推荐使用HttpURLConnection,但是这个类相比HttpClient实在是太难用,太弱爆了。OkHttp是一个相对成熟的解决方案,据说Android4.4的源码中可

2017-08-17 11:24:13 432

转载 Fiddler简介

1.为什么是Fiddler?抓包工具有很多,小到最常用的web调试工具firebug,达到通用的强大的抓包工具wireshark.为什么使用fiddler?原因如下:a.Firebug虽然可以抓包,但是对于分析http请求的详细信息,不够强大。模拟http请求的功能也不够,且firebug常常是需要“无刷新修改”,如果刷新了页面,所有的修改都不会保存。b.Wireshark是通用的

2017-08-16 15:26:57 270

原创 Android智能下拉刷新框架-SmartRefreshLayout

Github 传送门: https://github.com/scwang90/SmartRefreshLayoutDemo下载 APK-Demo: https://github.com/scwang90/SmartRefreshLayout/raw/master/art/app-debug.apk项目演示风格演示

2017-08-10 14:15:48 1503 1

原创 Glide 4.0 相比 Glide 3.0 及使用详解

1.变化单独列出的更改太多,但这里有一些亮点:新的文档,用户可以通过提交请求到Glide’s gh-pages分支贡献。用户可以添加新类型或自定义选项集来轻松地自定义Glide流畅的API。大量简化个人请求类型,确保选项始终如一,易于使用,即使您正在加载不同类型的资源。各种性能改进,包括在下载采样图像时大量减少垃圾,更加智能的默认磁盘缓存策略,以及加载GIF时性能提升。改进了视

2017-08-10 13:53:10 2040

原创 ShareSDKUtils,封装的分享工具类

介绍ShareSDKUtils是基于ShareSDK提供的API进行封装的工具类,方便于我们开发时分享的调用,支持使用默认的GUI,也支持自定义界面,点击事件中调用分享到某一个ShareSDK支持的第三方平台,使用ShareSDKUtils需要依赖ShareSDK提供的开发包。使用的方式为:如ShareSDKUtils.getInstance(Context context).us

2017-08-10 13:38:12 1016

原创 Java中日期或时间大小的比对

有一个字符串的时间,比如"2012-12-31 16:18:36" 与另一个时间做比较,如果前者比后者早,则返回true,否则返回false。代码示例:import java.util.*;  import java.text.ParseException;  import java.text.SimpleDateFormat;  class Test  

2017-08-09 11:25:57 33010 1

原创 Android之圆形头像(实现相机拍摄+相册选择+图片裁剪功能)

功能实现:点击圆形头像之后可以实现相册上传或者开启相机,然后把得到的图片经过剪裁,把剪裁过的图片设置为头像的背景图步骤:第一步:自定义一个类,继承ImageView,重写draw方法,实现外观为圆形第二步:在xml文件中引用该控件第三步:实现圆形头像的点击事件,点击后显示对话框界面,询问你是打开相册还是相机(自动省略显示对话框的代码)第四步:根据用户选择情况,打开相册或者相机第

2017-08-07 16:44:20 1633

原创 Android自带实现语言播报功能(针对英文)

package com.megvii.idcardo2o.util;/** * 针对英文 */import android.content.Context;import android.speech.tts.TextToSpeech;import java.util.Locale;public class SpeechUtils { private Context con

2017-08-07 15:18:58 1609

原创 Android 自定义TextView实现文字渐变动画

效果图代码:import android.content.Context;import android.graphics.Canvas;import android.graphics.LinearGradient;import android.graphics.Matrix;import android.graphics.Paint;import android.grap

2017-08-04 15:07:31 4719

原创 Android通用流行框架大全

1. 缓存DiskLruCache  Java实现基于LRU的磁盘缓存2.图片加载Android Universal Image Loader  一个强大的加载,缓存,展示图片的库Picasso  一个强大的图片下载与缓存的库Fresco  一个用于管理图像和他们使用的内存的库Glide   一个图片加载和缓存的库

2017-08-04 11:40:47 661

转载 Android启动页解决方案

启动页几乎成为了每个app的标配,有些商家在启动页中增加了开屏广告以此带来更多的收入。目前启动页的广告都有倒计时的功能,那么我们在倒计时的过程中能做些什么呢?这篇文章主要包括以下两方面内容集成腾讯广告联盟的SDK启动页加载过程中,后台初始化数据我们在设计启动页时的常规做法是建立一个Activity来加载开屏图片或者广告,作为程序的入口,那么在这个三到五秒时间内如果进行数

2017-08-04 11:30:46 513

原创 一个神奇的SuperTextView你值得拥有!

v1.3支持随时修改动画帧率。难以置信的是,你甚至可以在动画执行过程中随时修改!当然最好不要这么做。mSuperTextView.setFrameRate(30);// 修改帧率为30帧优化动画驱动的性能。酷炫不止,渐变来袭!同样,渐变效果的设置支持在xml中设置,并且能够即时预览。app:shaderEnable="true"// 必须设置为true才能启用

2017-08-04 11:25:42 1512

原创 Android Studio中Git和GitHub使用详解(上篇)

一、Git和GitHub简述1.Git分布式版本控制系统,最先使用于Linux社区,是一个开源免费的版本控制系统,功能类似于SVN和CVS。Git与其他版本管理工具最大的区别点和优点就是分布式;git是采用分布式版本库机制,不需要每次都将文件推送到版本控制服务器,每个开发人员都可以从服务器中克隆一份完整的版本库到本地,不用完全依赖于版本控制服务器。【优点:1.代码的发布和合

2017-08-03 14:09:01 5961 10

原创 Android 平台的 10 款开源任务管理和时间追踪应用

10 个 Android 手机上的应用程序,它们可以帮助你把时间组织起来,记录你在任务上花费的时间,并确保你不会错过最后的期限。所有的应用程序都是开源的,可以从 F-Droid 存储库中获取,所以大家不妨尝试一下,然后看看它们是否满足你的需求。MirakelMirakel 是一个具有现代用户界面的任务管理应用程序,并支持在这样的程序中可能需要的每种格式。在 Mirakel 的基本层面,

2017-08-03 11:51:17 1546

原创 Android面试中值得深思的问题

1、Android 数据存储方式分为哪几种?SharedPreferences存储数据 2. CotentProvider内容提供者 3. 文件存储 4. 数据库存储(Sqlite) 5.网络存储2. NDK是什么? 1. 一系列工具类的集合 2. Arm指令集 3. NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一

2017-08-03 10:08:17 439 1

原创 JavaScript特点、优缺点及常用框架

1.什么是JavaScriptJavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它最初由网景公司(Netscape)的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。2.JavaS

2017-08-02 18:01:24 7314

Android中城市地区的四级选择器

Android中城市地区的四级选择器,省市区县四级联动,简捷快速集成项目

2019-04-16

空空如也

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

TA关注的人

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