自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yechaoa

好记性不如烂笔头

  • 博客(346)
  • 资源 (2)
  • 收藏
  • 关注

原创 解决CardView在5.0以下留白的问题

CardView在5.0以下显示会有一点留白,有点类似TextView默认的padding,这个时候即使设置contentPadding属性也是没有用的。解决办法在用的地方做一层判断,如果当前系统是5.0以下,padding设为负值,把留白撑掉。 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) { ...

2018-07-04 16:08:42 2233

原创 Android EditText设置inputType之后minLines失效

EditText设置inputType之后minLines失效,会变成一行显示查阅了一圈也没有好的解决办法,总结一下三种解决方案: 1.去掉inputType属性2.设置inputType属性值为none3.给EditText设置高度...

2018-07-03 15:15:07 1450

转载 浅谈Android中的meta-data及其应用

前言在日常的Android开发中,AndroidManifest中总会出现一些<meta-data>标签,或是第三方SDK配置信息,或是系统配置,不禁让人思考<meta-data>到底是什么?有什么用?怎么用?有哪些应用场景?meta-data简介<meta-data>直译为“元数据”,该标签可为<activity>、<activity-ali...

2018-06-30 21:04:14 3490

转载 前端开发常用代码片段

作者:WEBINGsegmentfault.com/a/1190000014700549一、预加载图像如果你的网页中需要使用大量初始不可见的(例如,悬停的)图像,那么可以预加载这些图像。二、检查图像是否加载有时为了继续脚本,你可能需要检查图像是否全部加载完毕。你也可以使用 ID 或 CLASS 替换<img> 标签来检查某个特定的图像是否被加载。三、自动修复破坏的图像逐个替换已经破坏的...

2018-06-27 10:27:28 966

原创 Android EditText只输入数字和小数点

xml属性android:inputType="numberDecimal"代码mEditText.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL); 更多关于EditText:https://blog.csdn.net/yechaoa/article/details/52963857

2018-06-15 10:29:05 8659

原创 eoLinker chrome插件离线版安装

就不过多解释了,看到这篇文章就说明你有这需求。1.下载eoLinker插件离线安装包地址:https://github.com/eolinker/eolinker-api-test-plugin/blob/master/Chrome/eoLinker-extension-3.2.2.zip下载好之后解压。2.打开Chrome右上角的设置>更多工具>扩展程序,并打...

2018-06-13 15:51:47 4868 1

原创 SearchView使用详解

搜索在一般APP中是基本功能,且非常重要。 常见的有组装的EditText,今天主要讲的是SearchView。 官方文档地址:https://developer.android.google.cn/reference/android/widget/SearchView效果图: 很简单,主要3个步骤创建菜单文件配置SearchView处理事件,即监听1.创建菜...

2018-06-11 22:38:49 20085 3

转载 彻底弄明白Gradle相关配置

初识GradleGradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言来声明项目设置,而不是传统的XML。当前其支持的语言限于Java、Groovy和Scala,计划未来将支持更多的语言。怎么看上面都是一段很官方的解释,对于入门的人来说简直是一个噩梦般的解释(包括以前的我)。那下面我就用通俗一点语言说说我的理解...

2018-05-28 16:45:03 50031 6

原创 Android Fragment回退

假设场景:登录、注册MainActivity初始化和监听返回键 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main)...

2018-05-18 22:31:53 2295

原创 Retrofit+OkHttp实现Cookie持久化,RxJava方式

通过Interceptor实现cookie持久化将cookie存储到本地public class ReceivedCookiesInterceptor implements Interceptor { @Override public Response intercept(@NonNull Chain chain) throws IOException { ...

2018-05-18 21:56:44 1785

原创 Android 自定义车牌键盘

最近在做物流的项目,需要输入车牌号,传统的输入体验并不好,来回切换还要手打,便有了自定义键盘的想法。 其实这个车牌需求并不多见,物流、租车、停车相关的会常见一些,好在有前辈已经铺好路了 这个比较详细:https://blog.csdn.net/dgs960825/article/details/503447431.在res文件夹下新建xml文件夹,新建两个文件:...

2018-05-18 14:15:44 7473 19

原创 【整理篇】Android 开发小技巧

/storage/emulated/0/…手机内部存储路径mEditText.setKeyListener(null);EditText设置不可编辑,比focusable、enable更粗暴android:foreground=”?android:attr/selectableItemBackground”item的水波纹效果,在item的View加上这一属性...

2018-04-27 15:56:16 923

原创 Android Studio完美解决 you are about to commit crlf line separators,warning: CRLF will be replaced by LF

在使用Git的时候你可能会遇到you are about to commit crlf line separators...或者warning: CRLF will be replaced by LF in...关于CRLF和LF的问题就不赘述了,关键是发现了一个简单粗暴的解决办法!!解决办法出现这个问题之后文件是commit不了的,打开文件,然后在右下角会有编码U...

2018-04-25 23:23:58 11883 1

原创 Android 百度地图定位第一次成功,后续返回505

第一次定位成功,后续getLocType返回505,getCity什么的也一直都是null。首先应该再阅读一遍官方文档,查漏补缺。而且官方文档一般也有常见问题的解决方案。在官方的论坛中找到关于返回505的帖子,告诉我key的配置不对。在key的配置中,可能出错的只有SHA1和package,package一般也不会出错,那只能是SHA1了,SHA1分两个版本,我这里只填写了...

2018-04-23 15:51:06 3689 2

原创 Android 百度地图定位

最近在做一个两年前被搁置的项目,涉及到定位,但是有些功能已经用不了了,所以更新SDK又集成了一次,非常简单,这里只做入门级讲解,官方文档也很详细的。准备工作1.打开百度地图开放平台,找到功能与服务,选择定位,点击Android 定位SDK(v7.5),然后这就是官方文档了。 2.然后注册登陆,创建应用,填写之后得到一个AK,以前是AppKey,一个意思。 a. 应...

2018-04-23 12:09:50 4259 5

原创 Android 通过图片url获取图片的宽高

//获取图片真正的宽高 Glide.with(mContext).asBitmap().load(list.get(0).imagePath).into(new SimpleTarget<Bitmap>() { @Override public void onResourceReady(Bitmap bitmap, Transit...

2018-04-22 18:38:40 9456 1

原创 org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apach

org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject,org.apache.maven.archiver.MavenArchiveConfiguration) 解决办法1.Help — Install New Software add —http:/...

2018-04-16 14:35:41 2771

原创 'E:\AndroidSDK\platform-tools\adb.exe start-server' failed -- run manually if necessary

error: could not install smartsocket listener: cannot bind to 127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048) ‘E:\AndroidSDK\platform-tools\adb.exe start-server’ failed – run manually if...

2018-04-11 09:46:13 7570

原创 Android Studio 用svn回退版本、svn恢复到指定版本、一键恢复 撤回修改

生活总是不尽人意,代码有时候也是,没有人能一次性写好,需求也总是在变,甚至试错,完善的版本控制、熟悉的快捷键等,总能在开发中提高效率、少走弯路。回退版本第一步 1.点击Update Project,即VCS更新的箭头 2.勾选版本 3.选择一个要回退的版本第二步 选择一个要回退的版本,然后ok即可 这个时候就体现了comm...

2018-04-10 15:54:21 12535

转载 Android 8.0系统的应用图标适配

8.0系统的应用图标适配从Android 8.0系统开始,应用程序的图标被分为了两层:前景层和背景层。也就是说,我们在设计应用图标的时候,需要将前景和背景部分分离,前景用来展示应用图标的Logo,背景用来衬托应用图标的Logo。需要注意的是,背景层在设计的时候只允许定义颜色和纹理,但是不能定义形状。那么应用图标的形状由谁来定义呢?Google将这个权利就交给手机厂商了。不是有些手机厂商喜欢学习苹果...

2018-03-31 18:24:45 1512

转载 推荐15个 JavaScript 和 CSS 库

Tutorialzine的使命是让开发者与最新的Web开发发展同步。因此,我们每月都会精选一批最优秀的资源推荐给大家,相信这些资源你绝对值得拥有!ClarifyJSClarifyJS可以让你串联一串方法,以任意顺序执行。通常的JavaScript方法是从左到右执行的,ClarifyJS可以让你改变它们执行的顺序。而且,通过选择是否让进程等待某个特定的异步方法完成还是执行后继续,也能控制异步方法。S...

2018-03-30 22:15:18 671

转载 轻松掌握Notification的各种用法

前言建议结合代码,看博客更加高效,项目地址:https://github.com/yangchong211/通知栏截图Notification 概述基础用途概述Notification,是一种具有全局效果的通知,可以在系统的通知栏中显示。当 APP 向系统发出通知时,它将先以图标的形式显示在通知栏中。用户可以下拉通知栏查看通知的详细信息。通知栏和抽屉式通知栏均是由系统控制,用户可以随时查看。通知栏...

2018-03-27 20:56:10 2473

原创 Android 动态添加View 并设置id

主页面布局(main_activity.xml) LinearLayout 里面加一个Button,注意这里的LinearLayout要有orientation<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk...

2018-03-22 16:55:27 28286 5

原创 Fetch failed: unable to access': E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

过年期间在家里改了代码,上班后准备更新的,结果报错 Fetch failed: unable to access ‘https://github.com/…’: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version先是去github看了看,可以打开呀,然后又重新关联git,还是不...

2018-03-01 17:18:41 3478

转载 AndroidStudio Gradle依赖统一管理

AndroidStudio由于使用了gradle的进行项目构建,使我们开发app方便很多,今天我就给大家列出几点是用gradle的方便之处。 一、AndroidStudio Gradle第三依赖统一管理 二、AndroidStudio Gradle基于友盟的多渠道打包 三、AndroidStudio安全管理签名文件keystroe和签名密码  这三篇文章很好的讲解了gr...

2018-02-26 15:29:23 1740

转载 玩转Android之数据库框架greenDAO3.0使用指南

1.引入greenDAO用过3.0之前的greenDAO的小伙伴们应该都知道在引入greenDAO的时候是非常麻烦,但是在3.0之后这个引入过程简化了很多,参考官网给出的指导,我们来看看如何引入greenDAO:首先在project的gradle文件中引入greenDAO插件,引入之后如下:[java] view plain copydependencies {      classpath 'c...

2018-02-24 16:27:09 758

原创 Android集成Bmob后端云

Bmob 后端云 全方位一体化的后端服务平台 无需再造应用后端服务 轻松拥有开发中需要的各种后端能力功能比较多,常用的比如数据库、推送统计、IM即时通讯、短信等 本文主要介绍集成和云数据库的基本使用,文档写的很详细,而且还有demo和视频教程。 Bmob:http://www.bmob.cn/ 文档:http://doc.bmob.cn/data/android/index.ht

2018-02-10 01:45:22 1472 3

原创 Android 选择图片、上传图片之Matisse

效果图: 就目前效果图来看,好像也没什么毛病哈,其实我这个集成的过程是有点坎坷的。 而且,功能也不算是很齐全吧…主要体现在以下几个点没有回调之后的预览选择之后不能删除已选已选择的图片再次选择不能带过去剪裁压缩权限Glide版本过低但是,也是有特点的MD风格白天模式和夜间模式其他与同类相比也真的没什么了,唯一背书 就是知乎团队出的呗。。 相比之下,昨天...

2018-02-09 12:26:50 9354 10

原创 Android 选择图片、上传图片之PictureSelector

效果图: 之前出过一篇 Android 选择图片、上传图片之ImagePicker,这个是okgo作者出的,就一般需求来讲是够了,但是没有压缩,需要自己去搞。 后来业务需求提升,页面要美,体验要好,便不是那么满足需求了,所幸在github上找到PictureSelector(然后当时没多久Matisse就开源了..可以看这里Android 选择图片、上传图片之Matisse),也...

2018-02-08 16:55:34 82661 210

原创 Multiple dex files define Lcom/alibaba/sdk/android/utils/AMSDevReporter$AMSReportStatusEnum;

异常概述:首先这个异常是因为引入了重复的包导致的,常见的比如导入了多个v4包、utdid包等。 如果项目中业务比较复杂,引入的三方包和SDK比较多的话,这个问题就不是那么好排查,所以在引入的时候要做好工作,比如备注。这个异常分析来看,可以初步确定是阿里的utils包重复,但是又不确定具体是哪两个业务冲突,最后咨询阿里技术支持才得以解决。 项目中集成了友盟的推送SDK,且刚升级到最新版本

2018-01-30 16:30:52 2816 1

转载 关于AndroidManifest.xml 添加多个 provider节点问题

我们知道在android7.0,修改了对私有存储的限制,导致在获取资源的时候,不能通过Uri.fromFile(..)来获取uri了,但是在写入数据的时候是可以通过Uri.fromFile(..)来获取uri的,android 官网给出的解决办法是通过FileProvider来解决这一问题,我们需要在AndroidManifest.xml 配制provider节点provider an

2018-01-26 13:35:23 5380

原创 Android三步集成阿里热修复——Sophix

准备工作打开阿里云找到产品找到移动热修复创建APP(在右上角)然后会有app id 等信息,配置会用到(复制的时候注意会有空格) 官方集成文档1、配置添加maven仓库地址:repositories { maven { url "http://maven.aliyun.com/nexus/content/repositories

2018-01-25 18:14:16 1078 1

原创 Android WebView选择图片、发送图片

WebView控件是经常用到的,如果WebView中有选择图片这种操作,光是settings.setJavaScriptEnabled(true); 还是不够的,还需要重写WebChromeClient 和 WebViewClient初始化操作mWebView.setWebChromeClient(new MyWebChromeClient());mWebView.setWeb

2018-01-23 16:44:21 2423

原创 Android WebView设置Cookie

业务原理啥的就不讲了,直接上代码 /** * 同步cookie * @param url 要加载的地址链接 */ private void syncCookie(String url) { CookieSyncManager.createInstance(this); CookieManager cookieManager

2018-01-23 15:37:37 3006

转载 HTML 文档之 Head 最佳实践

语言在 html 标签中通过 lang 属性进行明确的语言声明,将会有助于翻译,英文、简体中文和繁体中文网页所属性值如下:html lang="en">html lang="zh-Hans">html lang="zh-Hant">编码请在 中第一行统一使用 utf-8 编码声明。meta charset="utf-8">Base 元素尽量不使用 元素,

2018-01-22 14:15:37 720

转载 Java 多线程之synchronized关键字详解

多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。 同步机制可以使用synchronized关键字实现。 当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。 当synchronized方法执行完或发生异常时,会自动释放锁。下面通过一个例子来对synchronized关键字的用

2018-01-22 14:01:39 524

原创 观察者模式

当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。介绍意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。主要解决:一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。何时使用:一个对象(目

2018-01-14 21:24:44 561

原创 建造者模式

建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。介绍意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。主要解决:主要解决在软件系统中,有时候面临着

2018-01-07 17:47:45 576

原创 单例模式

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。注意单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所

2018-01-03 23:11:52 576

原创 Error:Error converting bytecode to dex: Cause: com.android.dex.DexIndexOverflowException,解决65536

项目中的方法数太多,包括自己的、第三方等,超过65536就会报这个错,无法生成apk文件。官方解决方案:https://developer.android.com/intl/zh-cn/tools/building/multidex.html解决办法:1.app:build.gradleapply plugin: 'com.android.application'android { defau

2018-01-03 11:32:42 816

so文件(全平台)so

so文件(全平台),so文件(全平台),so文件(全平台),so文件(全平台),so文件(全平台),so文件(全平台),

2020-08-13

代码版本控制工具

TortoiseSVN TortoiseGit

2016-12-19

空空如也

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

TA关注的人

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