- 博客(34)
- 资源 (13)
- 收藏
- 关注
翻译 你所不知道的Lint
目录Lint自定义LintImplementationIssueDetector如何使用这一切值得吗原文地址:What is Android Lint and how it helps write maintainable code当一些开发人员由于不够谨慎,可能导致某些代码会有瑕疵。以下列举几个经常容易犯错的场景:比如旧版本的代码不支持新版本的功能,比如需要某些特定的权限,比如缺少翻译等...
2019-04-21 21:30:53
1224
原创 【Intellij Idea 插件 番外】使用Gradle编译插件,解决中文乱码
简介本篇博客主要是介绍Intellij Idea 插件开发过程中,使用Gradle进行编译时(默认是Ant),配置和使用相关的问题。由于官方文档此处说的不是特别明白,我在此将自己的配置进行讲解,并讲解如何解决使用Gradle 编译时出现中文乱码问题。如有错误,请在留言中指正,谢谢。 系列汇总地址实践为什么要使用Gradle肯定有很多人还是有疑惑,既然Gradle使用起来
2018-01-12 23:20:46
6972
2
原创 【Intellij Idea 插件 番外】Api讲解(类、方法等)
简介本篇博客主要是介绍Intellij Idea 插件中比较常用的类和方法。俗话说的好,工欲善其事,必先利其器。只有知道了类和方法的功能才能更好的去写(此处会一直跟进补充,方便当做资料查询,如果想继续了解如何编写插件,可跳过本章节)。如有错误,请在留言中指正,谢谢。 系列汇总地址类和方法简介操作代码相关说明:此部分介绍的是插件开发中对代码的检测、修改、读取等相关的类和方
2018-01-10 01:33:19
5393
原创 【Intellij Idea 插件从入门到深坑】基础的AnAction
简介本篇博客主要是介绍Intellij Idea 插件的基础环境的搭建,以及简单的入门操作,用于熟悉插件的编写流程,更快的熟悉和适应插件的编写。如有错误,请在留言中指正,谢谢。 系列汇总地址基础知识环境搭建首先为了方便开发,我们采用Intellij Idea 作为我们开发的IDE,可以点此下载。 安装过程比较简单我就不在此赘述了,下面我们讲解下如何设置,让你能够搭建好可以运行的插件系统。打开Int
2017-12-20 00:21:11
10904
12
原创 【Intellij Idea 插件从入门到深坑】系列目录
Intellij Idea 插件【Intellij Idea 插件从入门到深坑】让你能够熟悉Intellij Idea插件的开发,能够利用自己的所学,做出自己想要的东西。由于Intellij Idea 插件 相关的资料比较匮乏,无论是从谷歌还是百度搜索,可用的资料都很少,但本系列还是结合网上教程和源码提炼出用法。当然难免会出现错误,还请留言指正,感谢。目录基础的AnAct
2017-12-18 23:46:01
5389
1
原创 全屏到任意宽高的Dialog的写法
简介本篇博客主要是介绍如何实现全屏Dialog,以及部分原理,具体细节可以参考对应Dialog的源码实现。基础知识前提讲解前你需要具备如何去写一个Dialog的基础知识,因为本篇博客不会很细节的讲解此处内容,此博客会着重讲解如何实现一个全屏的Dialog,当然有关此篇博客中探讨出现的问题或者其他的疑问欢迎留言提问 ~。实现方式通过设置Style实现Dialog全屏此方法比较简单的就可以实现全屏的Di
2017-11-13 11:47:52
1118
原创 github 项目推荐之个人版
简介:此博文主要介绍一下我个人写的一些开源的库和框架,为的是知识的交流沟通、互相学习。项目列表:ThreadAnnotation(注解实现线程切换和方法执行时间监听)ThreadUtils(链式切换线程,可设置延时)UiWatchDog(Ui监视工具,精确定位问题代码)PermissionHelper(权限申请工具,苦口婆心式的引导+简单高效的使用)StatusB
2017-06-27 23:18:31
602
原创 【Kotlin从入门到深坑】之类的属性和字段
简介本篇博客主要是介绍Kotlin语法中的【类的属性和字段】相关的知识,帮助各位更快的掌握Kotlin,如果有疏漏或者错误,请在留言中指正,谢谢。 系列汇总地址基础知识定义在讲解之前我感觉有很多人根本不清楚什么是属性,什么又是字段,我们先简单说明一下。简单理解:字段,通常叫做类成员或者类成员变量,理解为”数据成员”,用来承载数据。属性,通常可以理解为set和get方法。其属名性时根据get和se
2017-06-12 20:42:15
1630
原创 解决某些Rom中EditText无法修改光标的问题
.> 发现、探索、总结简介本篇博客主要讲如何解决某些rom下EditText 光标无法修改的问题。现象我们大都遇到过这种情况,由于为了保证App整体的一致性,Ui 有时候会让你修改某些光标的显示颜色,你或许会说这有什么难的?一句代码搞定,代码如下:app:textCursorDrawable="@drawable/xx"结果你运行在模拟器上,喜滋滋的看着自己的成果,但是后面测试仍然找到了你,说你仍没
2017-06-09 10:37:29
1015
原创 【Kotlin从入门到深坑】之类的覆盖属性和方法以及抽象类
简介本篇博客主要是介绍Kotlin语法中的【类的覆盖属性和方法以及抽象类】相关的知识,帮助各位更快的掌握Kotlin,如果有疏漏或者错误,请在留言中指正,谢谢。 系列汇总地址上一篇博客中我们详细介绍了类的继承和构造,下面我们来讲一下,在继承时如何覆盖方法。覆盖方法我们先看一下如何去写,例子如下:// 父类,使用open关键词open class TestB { open fun test()
2017-06-07 22:00:17
3782
原创 【Kotlin从入门到深坑】之返回和跳转
简介本篇博客主要是介绍Kotlin语法中的【返回和跳转】相关的知识,帮助各位更快的掌握Kotlin,如果有疏漏或者错误,请在留言中指正,谢谢。 系列汇总地址返回和跳转kotlin中有三种结构化跳转表达式:return: 默认从直接包围的函数或匿名函数返回。break: 终止最直接包围它的循环。continue: 继续下次最直接包围它的循环。从上面的介绍中我们可以看出,和java是一致的,在此
2017-05-31 21:13:43
531
原创 【kotlin从入门到深坑】之类和继承
简介本篇博客主要是介绍Kotlin语法中的【类和继承】相关的知识,帮助各位更快的掌握Kotlin,如果有疏漏或者错误,请在留言中指正,谢谢。 系列汇总地址类声明类Kotlin中使用关键词class 声明类和java中保持一致,代码如下:class Demo{ //class + 类名}类的构成=class +类名+类头(可选)+类体(可选),如果没有类体,括号也可省略class Demo //cla
2017-05-26 14:05:14
508
原创 【kotlin从入门到深坑】之语句
简介本篇博客主要是介绍Kotlin语法中的【语句】相关的知识,帮助各位更快的掌握Kotlin,如果有疏漏或者错误,请在留言中指正,谢谢。 系列汇总地址准备在学习之前我们先有点基础知识上的认识,如下:Kotlin中函数使用fun 关键词声明。条件语句if表达式在Kotlin中if是表达式,也就是说不需要三目运算符了,因为if本身就支持。下面举例说明:val max = if (a > b) a e
2017-05-22 22:14:35
1016
原创 【kotlin从入门到深坑】系列目录
本博客是一系列介绍kotlin 的相关语法,后续还有专门讲解kotlin for android 相关的教程。博客中如果出现错误,请留言指正,感谢。目录:基础类型(讲解kotlin的基础类型的基础知识和如何使用)
2017-05-21 22:50:20
973
原创 【Kotlin从入门到深坑】之基础类型
简介本篇博客主要是介绍Kotlin语法中的基础类型相关的知识,帮助各位更快的掌握Kotlin,如果有疏漏或者错误,请在留言中指正,谢谢。 系列汇总地址准备在学习之前我们先有点基础知识上的认识,如下:Kotlin和java代码可以混合写,也可以互调。Kotlin中是不写;的。Kotlin中使用关键词val表示常量,var表示变量Kotlin中声明变量的模板 var a:Int =1 =>
2017-05-21 22:46:17
923
原创 Java反射(一)
每天都要学习,坚持就是胜利本篇博客对反射进行简单介绍,用反射进行获取对象的成员变量和函数,并进行操作,这些是后续操作的基础一、获取类的方法、构造方法、属性获取Class对象方式一:Class<?> class1 =Class.forName("com.guo.test.Person");方式二:Class<?> class1=Person.class;方式三:Person person=ne
2017-05-03 21:05:42
315
原创 Pro android 之一 :初步了解android
每日学习,不负年华本篇博客主要是简要的介绍一下android 的基础知识,是之前写的博客了,整理一下。安卓平台的核心是linux内核,它负责设备驱动程序、资源访问、电源管理和完成其他操作系统的支持。安卓支持两种类型的动画:补间动画和逐帧动画;安卓通过动画回调、插值器和变形矩阵支持这两种动画方法开发安卓程序至少需要理解activity、view、intent、contentprovider、s
2017-04-28 09:42:15
426
原创 从零写一个线程切换工具
有的人在努力,有的人却在拼命,不负当下本篇博客主要是指引着写一个简单实用的线程切换工具,如果有更好的想法或者意见可以留言我们需要带着问题去学,看到题目不知道你是否有一下几个问题:如何切换线程如何通知下一个需要进行的任务如何去管理这些任务如何能更好的更直观的去看去使用一、如何切换线程首先我们要知道如何进行基础的线程切换方法,如下:主线程 原理:比较通用的方法是获取主线程的handler
2017-04-24 21:35:14
532
原创 对象和对象引用
每天都在变化,每天都在进步本篇博客从例子出发讲解对象和对象引用的关系基础情况A a=new A();A a; //创建了个A 类型的引用a,此时指向nullnew A(); //在堆中创建了一个类A的对象,返回其引用地址= //将对象的地址给予引用情景1A a=new A(); //(01)A b=a;//(02)a=null;//(03)此时b仍然有数据,因为(02)的时候,发生了复制行
2017-04-21 09:23:23
353
原创 三、复合类型
日积月累,日新月异本篇主要介绍c++中有关数组和字符串相关知识。数组声明(与java的一致)type arrayName[size]; 数组数据的获取和java相同使用 arrayName[对应下标,从0开始],同样的编译器无法告知你是否超出数组的范围,java中超出范围会抛出index of exception 数组越界异常,c++则不一定,c++中属于按地址取值,如果对应位置有数据则显示
2017-04-18 23:59:02
442
原创 有关对象地址和对象关系的认识
对象的地址和对象的解释举例 : 类 A 对象a 操作: A a=new A();解释: a是存储在栈中,保存的是对应新创建出对象的地址(堆中的地址),对象保存在堆中 通过a可以操作原对象,操作原对象的成员函数和成员变量,这样是修改的原数据 如果重复上面的步骤:a=new A(); 此时新的地址赋予a,a存储的地址就是新的,之前的对象还在,但是无法获取到了,在c++ 中就是属于野指
2017-03-23 10:48:01
889
原创 Android实现Edittext显示下滑线的三种方法
付出终有回报,找准方向,努力向前一、简介本文章主要介绍三种方式实现Edittext下方显示下滑线,各有利弊,可以根据情景自行选择,其中有关字体显示的基准线、行高相关的知识。此篇主要介绍正常模式下代码如何去写,这里还有一篇是兼容行距(设置倍数或者具体数值)。二、可收获如何实现Edittext显示下划线根据情况如何选择实现方式字体的行高、基准线是什么 三、如何实现1)最简单的方式 - 基本
2017-03-20 20:53:49
3862
原创 二、C++处理数据
千里之行,始于足下本篇主要介绍c++中有关的基础数据类型的声明和使用以及基本的操作符相关知识。计算机内存的基本单位是位(bit),1字节(byte)等于8位sizeof 返回类型的长度,单位是字节define 是预处理命令,举例:#define INT_MAX 32767 告诉预处理器在程序中查找INT_MAX都使用32767来代替创建符号常量使用关键词const变量赋值的特殊形式
2017-03-20 01:05:58
694
原创 一、开始学习c++
预处理器编译指令#include,源代码添加之前,添加或替换文本编译指令 using namespace 使用cin cout 进行输入和输出的程序必须包含头文件 iostreamc++中使用声明指出需要存储的位置和内存空间(例如 int a,指出需要的内存以及该内存单元的名称),c++ 中所有变量都需要声明c++程序应当为每一个使用的函数提供原型,像变量声明和变量的关系. c++ 和ja
2017-03-17 01:25:48
398
原创 c++ 知识汇总
c++ 相关知识的记录,后面持续更新。本系列博客适用于有一定编程基础的人员进行学习,尤其是java基础然后学习C++,其中主要说明的大都是两种语言的不同之处。开始学习C++处理数据复合类型
2017-03-17 01:18:11
370
原创 AndroidEventBus教程
每一次探索都源于好奇一、说明:本系列主要是讲一些开源框架的使用,帮助程序员更好更快的使用开源框架,以下内容出于本人对框架的理解,如果有不对或者不准确的地方请评论,谢谢。 我比较喜欢带着问题去研究东西,所以我列出以下几个问题,希望你们一样可以带着疑问去看,问题如下:二、问题:AndroidEventBus是什么?它和EventBus以及OTTO有什么关系,又有什么区别?它修复集合传递的问题了
2016-10-27 00:08:59
520
原创 拆解PinnedHeaderListView源码
本系列博客主要用于学习开源源码中一些优秀的编码思想技巧和一些不常见的开发方式。 千里之行,始于足下首先明确学习研究PinnedHeaderListView这个源码的用途,通过阅读本博客你可以了解到以下几个方面:(约定如下:官方的是HeaderView,自己定义的header叫pinnedHeaderView)如何去监听ListView,如何知道当前可见的item的位置,以及对其拓展的操作。
2016-10-25 00:27:07
664
原创 Android技巧总结 系列一
本系列博客就是用于总结平时开发用到的技巧或者方法,用于开发者能更好的编码,如果有帮助或者有错误都可以下方留言,谢谢 成功源于开始的积累String.format(“3>7是:%b”,3>7) 输出是3>7是false 作用:用于替换输出,只需要更改输入的内容,结果和根据输入的内容去更改String result = "实时更新中,当前大盘指数<font color='red'>%d<
2016-10-24 22:43:12
660
原创 android 自定义view起步之一
本文中用到的例子是来自于http://blog.youkuaiyun.com/lmj623565791/article/details/24300125,只是为了方便更多的人了解自定义view的过程对其中的代码进行详细的解释,如果给原作者带来的不便还请谅解,如果本文中,有什么说的不对的地方,还请指正,谢谢。对于自定义view来说我们通常走的步骤大概分为: 1、自定义View的属性 2、在View的构
2016-04-19 00:31:29
378
原创 对于RE文件管理器打开安卓手机的Sqlite文件速度很慢的解决办法
开发的时候遇到这类的事件了,当时需要查看手机数据库信息是否写入正确,但是使用RE的时候打开很慢,要等很久,找了许久才找到问题。一、手机没有root,此时是打不开的状态。二、手机root不完整,重新卸载之前的root工具下载其他的或者原来的新版工具重新root(我遇到的就是此类)
2015-11-06 14:01:04
1917
全屏到任意宽高的Dialog例子代码
2017-11-13
EditText带下划线源码
2017-07-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人