自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

iblade的博客

明年的某个时候,你会想着要是今天就行动了该多好。

  • 博客(403)
  • 资源 (9)
  • 收藏
  • 关注

原创 List截取

/** * 截取list,保留前l位 * Examples: * list = [0, 1, 2, 3, 4, 5] * subList(list, 3); * list = [0, 1, 2] * * @param list 待截取list * @param newLength 保留前length...

2019-01-25 20:09:27 1840

原创 String字符串去重,保证顺序

/** * 字符串去重 * * @param str 待去重字符串 * @return 去重后字符串 */ public String removeDuplicate(String str) { if (str == null) return str; int len = s...

2019-01-25 17:50:56 6140 5

原创 List去重的N种方式

/** * LinkedHashSet有个特性:不能添加重复数据并能保证添加顺序 * * @param list */ public static void removeListDuplicate1(List<String> list) { LinkedHashSet<String> set = new L...

2019-01-25 17:35:40 4172

原创 M3版本迭代小技巧总结

M3版本迭代小技巧总结:1.RecyclerView,ListView中获取position时谨慎使用holder.getAdapterPosition():1.1 目前测试发现:至少两种情况下,ArrayIndexOutOfBoundsException: length=10; index=-1,必现:​ 调用removeItem时;​ 同时点击两个Item时;1.2 官方文档解释...

2019-01-23 15:49:20 219

原创 定位权限的获取方式

/** * 与权限相关的工具类 * Created by @author iblade.Wang on 2019/1/8 19:22 */public class PermissionUtils { /** * 判断位置权限集合 */ public static String[] permissionsLocation = {Manifest.per...

2019-01-09 21:56:52 2283

原创 Android获取定位经纬度,转换成地址

private LocListener locListener = null; /** * 点击获取地图 * * @param view */ public void onClick(View view) { if (null == locListener) { locListener = new L...

2018-12-26 19:34:57 8188

原创 Android Studio 找不到符号 变量xxx 类id

module中布局文件移动文件之后,发现代码编译错误,报错信息如下:错误: 找不到符号符号: 变量 tv_content位置: 类 id但是,在Android Studio里面点击id的使用,仍然可以跳转到xml里面。原因是:代码是从一个module移动到另一个module,对R的引用还是引用的之前的module的,导致无法找到。解决方法是:把import里面对R的引用删除掉,让A...

2018-12-16 23:01:52 10612 10

原创 RecyclerView ViewHolder getAdapterPosition()返回-1(NO_POSITION)

RecyclerView 自带删除Item方法notifyItemRemoved(position);频繁点击删除时,突然抛出越界异常显示 position = -1 ;java.lang.ArrayIndexOutOfBoundsException: length=10; index=-1at java.util.ArrayList.get(ArrayList.java:310)WTF...

2018-12-03 15:27:46 10179 2

原创 代码动态设置Margins

public static void setMargins(View v, int l, int t, int r, int b) { if (v.getLayoutParams() instanceof ViewGroup.MarginLayoutParams) { ViewGroup.MarginLayoutParams p = (ViewGro...

2018-11-30 10:24:16 2222

原创 Git命令自动补全

下载git源码使用如下命令即可下载:git clone https://github.com/git/git复制 git-completion.bash源代码下有个 contrib/completion 目录,有个 git-completion.bash 文件cd git/contrib/completion/将该文件复制到主目录(~)下注意:复制时,文件名前加一个"点"(.),...

2018-11-08 19:53:45 8839 1

原创 Android Studio卡顿

AndroidStudio 卡顿 固态硬盘打开studio64.exe.vmoptions改成这样:-Xms4096m-Xmx4096m-XX:MaxPermSize=4096m-XX:ReservedCodeCacheSize=1024m-XX:+UseConcMarkSweepGC-XX:SoftRefLRUPolicyMSPerMB=50-Dsun.io.useCanon...

2018-10-30 18:05:29 1181

原创 Android中Handler弱引用工具类

经常会用到Handler,我们也清楚它会内存泄露,如果再View中使用,很难做到onDestroy( )中removeAllCallback(null),索性写个工具类,但是我在项目中使用时候,发现有被GC的风险。/** * Created by ibalde.Wang on 2018/10/25 12:10 */public class HandlerUtils { priva...

2018-10-26 19:32:46 2288 3

原创 TextView跑马灯-两种实现方式

Android中TextView跑马灯有多种实现方式;一种是自定义控件,另外一种是写一个工具类自定义控件/** * Created by iblade.Wang on 2018/10/24 10:29 */public class MarqueeTextView extends TextView { public MarqueeTextView(Context context...

2018-10-26 19:27:51 3677

原创 Activity切换动画(开启/退出)的两种实现方式

Activity系统默认的进入动画是从右侧进入到左侧停止,退出动画是从左到右移动直到完全退出界面。如果要修改Activity进入和退出动画有两种方式。第一种方式:overridePendingTransition方法startActivity()方法之前调用overridePendingTransition方法。startActivity(intent);overridePendingTr...

2018-10-23 19:53:32 14154 3

原创 java.lang.ClassNotFoundException: Didn't find class "XXX.MainActivity" on path: DexPathList[...

2018-10-19 10:48:27 39158 9

原创 Git使用笔记

安装Git客户端的话,参考该文章https://www.cnblogs.com/vitah/p/3612473.htmlgit使用基本流程:1.从仓库克隆代码到本地找到公司GitLab项目地址ssh地址,拷贝本地任何一个文件夹 git clone ssh地址2.提交操作说明git add .添加所有文件git status查看状态git commit...

2018-10-12 11:27:45 209

原创 HashMap源码解析

来不及整理电子版,先献丑把笔记本拍几张,随后整理。有人问,什么年代了,还手写笔记,哈哈,如果不亲自手写一遍,我是真心记不住。很多API不用知道工作原理 一样可以使用,所以平时只是使用,如果要想进一步知道原理,岂能不下点功夫,例如 按照自身理解,动笔誊写一遍。...

2018-09-25 16:07:21 214

原创 Android面试题总结(2018年9月)

2018年9月,面试题总结,顺利拿到offer,并没有想象中的开心,或许随着工作年限的增长,对自己技术进步的步伐提出了更高的要求,加油!1.在Android开发中,谈一下您使用位运算的场景?(https://blog.csdn.net/zzp16/article/details/7956768)2.IntentService实现原理3. handler实现原理,能否用于子线程间通信,如何实现...

2018-09-25 15:35:00 417

原创 Kotlin初体验(五)-空安全

首先说 空 这件事,空 :One of the most common pitfalls in many programming languages, including Java is that of accessing a member of a nullreferences, resulting in null reference exceptions. In Java this wou...

2018-09-19 19:42:46 219

原创 Kotlin初体验(四)- 控制语句

条件分支条件分支是最简答的控制语句,主要包括两路分支和多路分支,我们一起探索下Kotlin给条件分支带来了哪些变化简单条件分支直接上代码: var i = 0 textView.text = "开关" //类似Java写法 btnClick.setOnClickListener {

2018-09-19 19:39:05 376

原创 Kotlin初体验(三)- 字符串 和 容器

字符串字符串与基本数据类型转换基本数据类型转String,在上一篇博客已经讲过,调用toString(),反过来,字符串又该如何转换成基本数据类型呢?请看下表字符串转换为其他数据类型的Kotlin与Java方式对比字符串转换目标Kotlin转换方式Java转换方式String->InttoInt( )Integer.parseInt(字符串变量)Str...

2018-09-19 18:38:30 1338

原创 Kotlin初体验(二)- 基本数据类型

首先看一下Kotlin基本数据类型和Java区别: 基本数据类型名称 Kotlin的数据类型名称 Java的数据类型名称 整形 Int int和Integer 长整型 Long long和Long 浮点型 Float float和Float 双精度 Double double和Double 布尔型 B...

2018-09-12 15:14:45 465 2

原创 Android隐藏软键盘

网上好多方法说的隐藏方法,其实是隐藏/显示方法,即,当前键盘显示,调用一下,隐藏,在调用一下,又显示了。下面提供两种彻底隐藏的方法: /** * 软键盘显示/隐藏 */ public void hideShowKeyboard() { InputMethodManager imm = (InputMethodManager) getSyst...

2018-09-11 16:56:05 8584 3

原创 com.android.support冲突的解决办法

All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes如果很多第三方包都有与support包冲突的话,可以在build文件添加以下代码,这样就不用一个一个依赖的exclude了://强制所有的第三...

2018-09-06 17:44:34 1452

原创 Kotlin初体验(一)-引入Android Studio

Kotlin问世于2011年,直到近两年被JetBrains,Google等公司扶持下,才被逐渐重视起来。尤其是2017年5月份谷歌宣布把Kotlin作为Android的官方开发语言,紧接着10月份Android Studio3.0正式集成了Kotlin开发环境,11月份更完善的Kotlin1.2版正式发布。尽管Java由来已久,根深叶茂,但作为Android开发人员,尽快了解Kotlin是大势所...

2018-09-06 15:52:59 4697 1

原创 AndroidStudio中调试java打印中文乱码

在AndroidStudio中调试Java程序,控制台输出时候中文出现乱码。就是下图酱紫。肯定是UTF-8出问题了,咋办?改吧,一看AS右下角,当前就是UTF-8啊!莫慌,去java module的build.gradle中加一段任务试试。tasks.withType(JavaCompile) { options.encoding = "UTF-8"}...

2018-09-05 16:28:45 4508

原创 JVM类加载三步走

Java虚拟机通过加载、连接和初始化一个类型,使该类型可以被正在运行的Java程序使用。加载:把二进制形式的Java类型读入Java虚拟机中。 连接:把加载的二进制形式的类型数据合并到虚拟机的运行时状态中去。 1. 验证:确保Java类型数据格式正确并且适合于Java虚拟机使用。 2. 准备:负责为该类型分配它所需内存。 3. 解析:把常量池中的符号引用转换为直接引用。(可推迟到运行中的程序...

2018-09-04 17:35:11 409

原创 Android属性动画优化

属性动画优化思路:①使用PropertyValuesHolder ②使用Keyframe ③animator.setRepeatCount(ValueAnimator.INFINITE)及时cancel()④动画卡顿,可以考虑使用自定义控件实现,如果一个自定义不行,那就是两个。。。(待续)一,PropertyValuesHolder  ...

2018-08-31 18:29:35 2806

原创 SSDP在Android上的实现

一.什么是SSDP:SSDP(Simple Service Discovery Protocol),简单服务发现协议,用于发现局域网里面的设备和服务。 SSDP消息分为设备查询消息、设备通知消息两种,通常情况下,使用更多地是设备查询消息。设备查询消息-格式例子如下:M-SEARCH * HTTP/1.1HOST: 239.255.255.250:1900MAN: "ssdp:d...

2018-08-22 18:25:01 4358 4

原创 RecyclerView的插入,删除,替换

首先设置recyclerView动画mRecyclerView.setItemAnimator(new DefaultItemAnimator());然后在Adapter中定义三个方法 public void remove(int position) { list.remove(position); notifyItemRemoved(posit...

2018-08-18 17:26:10 2829

原创 Android Shape

<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape=["rectangle" | "oval" | "line" | "ring&quo

2018-08-08 16:54:53 500

原创 区域选定(类似截图,可拖动)

/** * Created by ylWang on 2018/7/23 18:22. */public class MarkView extends RelativeLayout { private ImageView ivTouch; private RelativeLayout rlRect, rlRoot; private LinearLayout llS...

2018-07-30 11:16:20 1821

原创 微信/QQ登录分享-Android

/* * 微信第三方 此类必须存在,必须在“****.wxapi”包中 */public class WXEntryActivity extends AppCompatActivity implements IWXAPIEventHandler { // IWXAPI 是第三方app和微信通信的openapi接口 public static WXEntryActivi...

2018-07-26 10:46:41 887 3

原创 项目十大管理和五大过程

PMBOK五大过程组是什么?       PMBOK五大过程组是:启动过程、规划过程、执行过程、监控过程、收尾过程。       各用一句话概括项目管理知识体系五大过程组:       1、启动过程组:作用是设定项目目标,让项目团队有事可做;       2、规划过程组:作用是制定工作路线,让项目团队“有法可依”;       3、执行过程组:作用是“按图索骥”,让项目团队“有...

2018-07-19 11:55:31 100161 11

原创 人脸信息集合去重

问题:人脸识别返回一个识别集合,元素包含三个字段trackId,face,name。每条数据均有trackId,且有可能会重复;不一定有name和face。我们认为同一个trackId的条目 均为重复信息,需求是 去除重复trackId,并保证保留下的那条信息最全,优先考虑name。源数据形式如下:遇到这种问题,建议在Person中加一个字段来标识自己的信息完整性,/...

2018-07-07 18:54:10 2079 5

原创 HTTPS讲了什么?(一)

1.张三和李四明文通信,很容易被王五监听,传输安全失败。 问题:明文传输太危险,建议加密一下。我们也知道了王五这家伙是网络传输路上实施劫持的专家级从业者,不可不防。 2.张三和李四商量用对网络传递信息进行加密,设计流程如下首先加密算法都是公开的,这下子,没有密钥的话王五就算劫持到密文也没用,反正看不懂。可是张三和李四之间怎么传递密钥呢?传送密钥还要经过网络,好吧,王五万一同时劫持到密钥,岂不是可以...

2018-06-28 17:02:13 302 1

原创 Python默认参数

def add_end(list=[]): list.append("end") return list# 默认参数多次调用,竟然每次结果不一样n = 0while n < 5: print n, add_end() n += 1打印结果:很多初学者很疑惑,默认参数是[ ],但是函数似乎每次都“记住了”上次添加了'end'后的list。原因解释如下...

2018-06-26 11:49:58 1006 4

原创 如何做一个有趣的人

1、不善表达是能力不行(储备太少),不是性格内向——请不要自欺欺人咯——这句话至少对于自己完全没毛病。2、【极简主义】衣服不要多,但要有质感。朋友不要多,但要有交情。信息不要多,但都很重要。读书不必多,但要有深度。东西不必多,但要用得着。3、【作者对极简主义的理解】不对这个泛泛的世界投注太多的感情、太多的时间、太多的金钱,把注意力集中在自己感兴趣的内容上;目标明确,专注不暧昧;该工作工作,该玩玩,...

2018-06-21 13:07:56 11232

原创 抽象类可以被实例化吗?匿名类又是什么?

public class TestClass { private InterfaceA a = new InterfaceA() { @Override public void testA() { } };//成员匿名类,例如在Android开发中常用的Handler。 public static void main(St...

2018-06-21 11:27:32 7555 2

原创 Java中clone( )和new效率比较

对象创建的几种方法:1.使用new关键字2.使用clone方法3.反射机制4.反序列化以上四种都可以产生java对象1,3都会明确的显式的调用构造函数2是在内存上对已有对象的影印 所以不会调用构造函数4是从文件中还原类的对象 也不会调用构造函数clone和new那更快?直接上代码测试:package com.miivii.javalib;/** * Created by ylWang on ...

2018-06-20 17:37:18 13040 7

微信QQ登录分享-AndroidStudio

适用于微信和QQ第三方登录和分享使用,包含两个jar和指导文章链接。自己代码工具类。

2018-09-25

Spring从入门到精通(高清珍藏版)

Spring 从入门到开发,全书详细介绍了Spring开发的各个技术细节,该资源是高清的pdf版本,是学习Spring不可多得教材。

2018-09-19

汉字转换拼音的jar

汉字转换拼音的jar,可用于Android或者java开发中需要汉字转换拼音的场景,pinyin4j-2.5.0.jar,带声调,可更改大小写

2017-09-05

adb的压缩包

旧版adb压缩包

2017-06-24

Android弹窗ToastDemo源码

自定义了土司 显示大小 显示时间 显示位置 透明度 圆角与否 显示内容 等

2016-05-20

Android弹窗PopuWindowDemo源码

Android弹窗PopuWindowDemo源码,直接输入提示内容字符串和显示时间就行了

2016-05-20

Scrollview中嵌套ViewPager和ListView常出现的问题

Scrollview中嵌套ViewPager和ListView常出现的问题: ViewPager如果在Scrollview中使用,并且宽高指定为match_parent或者wrap_content则不会显示内容,但是如果将高度指定为200dp,则ViewPager则会将内容显示到屏幕上 ListView同ViewPager类似,必须指定固定高度之后,才可以显示相应的高度,否则只显示一个Item的内容高度,然后在ListView区域上下滑动时,Scrollview并没有效果,而是实现的是ListView的上下滚动事件。

2016-03-30

Android:ScrollView中嵌套ViewPager和ListView示例

2016-03-30

常用布局颜色

用于常规颜色的配置

2016-03-22

空空如也

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

TA关注的人

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