上一页 1 2 3 4 5 6 ··· 10 下一页
摘要:我们用toast时不能设置显示的时间,而且不支持在线程中展示toast,下面我对原始的toast进行了封装,这样我们可以很方便的进行toast的使用了。package com.kale.lib.utils;import android.content.Context;import android.o... 阅读全文
posted @ 2015-05-11 12:05 developer_Kale 阅读(979) 评论(0) 推荐(0) 编辑
摘要:【转自】http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0427/2797.htmlhttp://www.flysnow.org/2015/08/13/android-tech-docs-support-annotations.html英... 阅读全文
posted @ 2015-05-10 21:40 developer_Kale 阅读(5577) 评论(1) 推荐(0) 编辑
摘要:密码在做版本release时你app的build.gradle你需要定义signingConfigs.此时你应该避免以下内容:不要做这个. 这会出现在版本控制中。signingConfigs { release { storeFile file("myapp.keystore")... 阅读全文
posted @ 2015-05-10 21:21 developer_Kale 阅读(4459) 评论(3) 推荐(1) 编辑
摘要:什么是MVP呢,简单来说就是将view层和逻辑完全独立出来,让逻辑和显示完全独立。本例中就是采用了这种模式,让activity作为view层,activity中涉及了适配器,所以这里尝试让适配器作为P层来进行逻辑处理。以后可能要考虑用多个p来做逻辑处理。总之,我们先来分析下如何用MVP得思路来分析这... 阅读全文
posted @ 2015-05-10 21:13 developer_Kale 阅读(2924) 评论(10) 推荐(0) 编辑
摘要:我们用Robolectric测试的话需要在gradle中进行配置,国内的详细教程太过简易,而且很多是低版本下的配置方案。所以经过本人的仔细摸索,找到了现在高版本中的配置方案,主要还是参考了官网的配置教程:https://github.com/robolectric/robolectric-gradl... 阅读全文
posted @ 2015-05-07 10:06 developer_Kale 阅读(1154) 评论(0) 推荐(0) 编辑
摘要:在windows环境下利用github客户端我们可以直接拥有可视化的界面来管理工程,当然你也可以选择你喜欢的命令行工具来做。今天我分享一个比较快速的方式来配置git环境。先去下载github的windows客户端:https://windows.github.com/下载完安装后其实就搞定了一大半了... 阅读全文
posted @ 2015-05-06 09:53 developer_Kale 阅读(481) 评论(0) 推荐(0) 编辑
摘要:请先阅读:http://blog.saymagic.cn/2015/02/16/release-library-to-jcenter.html最外面的build.gradle// Top-level build file where you can add configuration options... 阅读全文
posted @ 2015-04-30 18:00 developer_Kale 阅读(546) 评论(0) 推荐(0) 编辑
摘要:我们的recyclerView有多个layoutmanager,通过重写layoutmanager的方法就可以让recyclerView和ScrollView嵌套了。但是请注意,如果recyclerView很长那么强烈不建议去做嵌套,因为这样recyclerView会在展示的时候立刻展示所有内容,效... 阅读全文
posted @ 2015-04-30 17:51 developer_Kale 阅读(51869) 评论(5) 推荐(1) 编辑
摘要:本文仅是我个人在实际开发中习惯的编写方式,当然这种方式也是来自很多官方的推荐,所以在一定程度上是可以被模仿套用的。本文将不定期更新~零、指导原则优先保证可读性,不要过分追求代码艺术和效率在可读性和代码效率方面,请选择可读性。为了可读性我宁可多建立一个对象,或者是多写一个方法。当然,如果这段代码是执行... 阅读全文
posted @ 2015-04-30 11:01 developer_Kale 阅读(856) 评论(0) 推荐(0) 编辑
摘要:android:divider="@drawable/shape"android:showDividers="middle|beginning|end"分割线如果是图片那就直接使用图片就行,如果要使用颜色就必须使用shape来显示,直接使用颜色或Color是没有用的使用shape的时候要注意设置si... 阅读全文
posted @ 2015-04-29 14:42 developer_Kale 阅读(1341) 评论(0) 推荐(0) 编辑
摘要:今天来给大家介绍一个非常有用的Studio Tips,有些时候我们在一个方法内部写了过多的代码,然后想要把一些代码提取出来再放在一个单独的方法里,通常我们的做法是复制粘贴,现在我来教给大家一个非常简洁的方法,先看下gif演示吧:只需要选中一些代码,然后操作快捷键Cmd + Option + M就ok... 阅读全文
posted @ 2015-04-29 13:01 developer_Kale 阅读(1059) 评论(0) 推荐(0) 编辑
摘要:1.图片在xxhdpi,手机是hdpi的我们有一个手机是hdpi的。我们还有一个图片,我们把他放在xxhdpi下。当手机显示的时候,系统会去hdpi中找,发现没有图片,最终在xxhpi中找到。终于找到图片后,系统会觉得xxhdpi中的图片一定很大,而我要把它显示在hdpi的手机中的话就应该压缩下图片... 阅读全文
posted @ 2015-04-28 19:10 developer_Kale 阅读(786) 评论(0) 推荐(0) 编辑
摘要:一、引子Chrome工具里面有很多json格式化的插件,可以让杂乱的json内容变得有序,我们先来看看效果:正常情况下:格式化后:规整多了吧!二、工具分享+比对1.JSON Formatterhttps://chrome.google.com/webstore/detail/json-formatt... 阅读全文
posted @ 2015-04-28 18:06 developer_Kale 阅读(1788) 评论(0) 推荐(0) 编辑
摘要:如果你希望根据JSon数据自动生成对应的Java实体类,并且希望能进行变量的重命名,那么“JSON To Java”一定适合你。(下面的地址需要翻墙)https://jsontojava.appspot.com/简单快速有效,适合追求效率的你。 阅读全文
posted @ 2015-04-28 17:40 developer_Kale 阅读(1529) 评论(0) 推荐(0) 编辑
摘要:一、最终成果本例是用android自带的相册获取图片的,并且处理了很多异常,最终你的activity只需要用很少的代码就能获得用户选择好的图片了。例子: 加完权限后就可以编码啦~package com.example.jack.getphoto;import com.kale.lib.a... 阅读全文
posted @ 2015-04-27 17:38 developer_Kale 阅读(2888) 评论(0) 推荐(0) 编辑
摘要:public class InputUtil { private static InputUtil instance; private InputMethodManager mInputMethodManager; private static Activity mActivity... 阅读全文
posted @ 2015-04-27 14:36 developer_Kale 阅读(187) 评论(0) 推荐(0) 编辑
摘要:一、使用api提供的类进行操作Android提供了CountDownTimer来让我们进行倒计时,可以让我们很方便的进行倒计时的操作。使用方式也很简单,下面直接贴代码就好了:package com.kale.duitanglib.time;import com.kale.lib.activity.K... 阅读全文
posted @ 2015-04-27 09:50 developer_Kale 阅读(12942) 评论(0) 推荐(0) 编辑
摘要:我们在编码的时候经常会用到findviewById,不厌其烦,我之前介绍过一个很取巧的方法,挺好用的,这里再贴一下:public class KaleBaseActivity extends Activity { private String TAG = getClass().getSimpl... 阅读全文
posted @ 2015-04-26 19:07 developer_Kale 阅读(592) 评论(0) 推荐(0) 编辑
摘要:一、打包时忽略无用资源 我们在打包的时候默认会把没有用到的资源(比如图片)也打包成app,徒增了应用的大小。现在我们可以利用Gradle来优雅的去除没有用到的资源文件了!就是在gradle中配置shrinkResources true。这个东西依赖于minifyEnabled,所以minifyEn... 阅读全文
posted @ 2015-04-26 14:51 developer_Kale 阅读(23876) 评论(1) 推荐(0) 编辑
摘要:有时候调试SDK必须要用release版本,但是每次打包混淆太麻烦,希望能在IDE中直接跑出release版本的应用,简单来说就是在debug模式下产生release版本的app,这时候该怎么做呢?当我们使用AndroidStudio的Gradle之后会很简单的解决这个问题。下面是来自:http:/... 阅读全文
posted @ 2015-04-20 22:04 developer_Kale 阅读(5673) 评论(0) 推荐(0) 编辑
摘要:常用的快捷键:WIN+D:显示桌面,再按一次还原桌面;WIN+R:打开运行,输入命令可以执行相应操作,输入路径可以打开对应路径,输入程序名称可以打开对应程序(前提是你打开的是windows下面的程序);输入cmd打开DOS窗口,输入notepad打开记事本,输入calc打开计算器等。WIN+E:打开... 阅读全文
posted @ 2015-04-07 16:11 developer_Kale 阅读(310) 评论(0) 推荐(0) 编辑
摘要:WebP是谷歌研发出来的一种图片数据格式,它是一种支持有损压缩和无损压缩的图片文件格式,派生自图像编码格式 VP8。根据 Google 的测试,无损压缩后的 WebP 比 PNG 文件少了 45% 的文件大小,即使这些 PNG 文件经过其他压缩工具压缩之后,WebP 还是可以减少 28% 的文件大小... 阅读全文
posted @ 2015-04-07 15:58 developer_Kale 阅读(1086) 评论(0) 推荐(0) 编辑
摘要:tinypng是一个支持压缩png和jpg图片格式的网站,通过其独特的算法(通过一种叫“量化”的技术,把原本png文件的24位真彩色压缩为8位的索引演示,是一 种矢量压缩方法,把颜色值用数值123等代替。)可以实现在无损压缩的情况下图片文件大小缩小到原来的30%-50%。网站地址:https://t... 阅读全文
posted @ 2015-04-07 15:53 developer_Kale 阅读(1959) 评论(0) 推荐(0) 编辑
摘要:为了增加复用性和灵活性,我们还是定义一个接口来做监听滚动到底部的回调,这样你就可以把它用在listview,scrollView中去。OnBottomListenerpackage kale.com.waterfall;/** * @author Jack Tony * @brief * @date... 阅读全文
posted @ 2015-04-07 10:00 developer_Kale 阅读(21488) 评论(0) 推荐(0) 编辑
摘要:在使用SwipeRefreshLayout时我们注意到在SwipeRefreshLayout中左右滑动时可能也会触发下拉刷新的事件,这点让我们很不爽。追其原因是SwipeRefreshLayout对于y轴触摸举例十分明感,没有做太多的容差处理(似乎容差值仅有16),所以如果你不是完全水平的滑动的话就... 阅读全文
posted @ 2015-04-07 09:56 developer_Kale 阅读(7637) 评论(1) 推荐(2) 编辑
摘要:今天给大家分享的是一种将view的初始化和逻辑与activity分离的架构,采用的是mvp模式。但令人遗憾的是,这仅仅是一个新的思路,我在实际使用中发现其并不能完全将UI逻辑与activity分开,所以在实际中没办法认为这种设计是合理的。设计的初衷是觉得activity要接收intent或者要进行很... 阅读全文
posted @ 2015-04-05 10:29 developer_Kale 阅读(2474) 评论(1) 推荐(0) 编辑
摘要:一、引子用这两个工具可以自动的遍历代码,并且产生代码文档,我们先来看看效果,然后放出这两个工具的下载地址。二、工具的下载地址doxygen:http://www.stack.nl/~dimitri/doxygen/download.htmlgraphviz:http://www.graphviz.o... 阅读全文
posted @ 2015-04-05 09:55 developer_Kale 阅读(6107) 评论(0) 推荐(2) 编辑
摘要:android对于内存有一定的限制,很多手机上对内存的限制是完全不同的。我们的应用程序其实就是一个进程,这个进程是完全独立的,这个进程分配的内存是一定的,所以我们经常会遇到OOM的问题。但,你可能不知道的是,你可以指定应用程序的一些组件运行在不同的进程中,而不是那个被用于启动应用程序的。我们需要的仅... 阅读全文
posted @ 2015-04-04 12:13 developer_Kale 阅读(460) 评论(0) 推荐(0) 编辑
摘要:clone项目git clone [仓库地址]eg:git clonehttps://github.com/tianzhijiexian/TestRepository.git配置用户名&邮箱git config user.name "用户名"git config user.email "邮件地址"e... 阅读全文
posted @ 2015-04-03 22:36 developer_Kale 阅读(408) 评论(0) 推荐(0) 编辑
摘要:简述: 策略模式的适用的目标是多子类和单一父类的情形。父类中放的是很多子类共用的代码段,对于不同子类特殊的代码段交给子类进行编写。但如果两个或两个以上的子类需要共同的代码段时,不能将这个代码段放入父类,因为这个代码段和其他的子类无关。正确做法是将少数子类共用的代码段做一个接口,写一个类去实现这个接... 阅读全文
posted @ 2015-03-29 19:21 developer_Kale 阅读(179) 评论(0) 推荐(0) 编辑
摘要:很多网站上提供了Ahdroid studio的“代码样式”文件,那么作为win平台的用户,我们就需要学会如何导入这个样式文件。我也是查了很久才知道是怎么导入的,下面就是我的经验分享。一、下载代码样式文件比如:codingStyle.xml ... 阅读全文
posted @ 2015-03-28 11:07 developer_Kale 阅读(3416) 评论(1) 推荐(1) 编辑
摘要:Path是android中用来封装几何学路径的一个类,因为Path在图形绘制上占的比重还是相当大的。你可以用它来绘制各种样式的几何图形,做图表什么的都可以。一、画线段1.1lineT(float x, float y)先来看一段代码: @Override protected void o... 阅读全文
posted @ 2015-02-26 13:27 developer_Kale 阅读(6058) 评论(0) 推荐(2) 编辑
摘要:Canvas所提供的各种方法根据功能来看大致可以分为几类:第一是以drawXXX为主的绘制方法;第二是以clipXXX为主的裁剪方法;第三是以scale、skew、translate和rotate组成的Canvas变换方法;最后一类则是以saveXXX和restoreXXX构成的画布锁定和还原;还有... 阅读全文
posted @ 2015-02-26 12:01 developer_Kale 阅读(7692) 评论(0) 推荐(0) 编辑
摘要:一、概述setShader(Shadershader)中传入的自然是shader对象了,shader类是Android在图形变换中非常重要的一个类。Shader在三维软件中我们称之为着色器,其作用是来给图像着色。它有五个子类,像PathEffect一样,它的每个子类都实现了一种Shader。下面来看... 阅读全文
posted @ 2015-02-24 13:55 developer_Kale 阅读(14655) 评论(0) 推荐(0) 编辑
摘要:一、前言 我们用set方法来设置画笔的样式,类似于我们挑选画笔画画的过程。由于上面有些方法不支持硬件加速,所以在高版本系统中可能会没有效果。因此,我们首先来看看官方废弃的方法。下图来自:https://developer.android.com/guide/topics/graphics/hard... 阅读全文
posted @ 2015-02-23 11:52 developer_Kale 阅读(3450) 评论(0) 推荐(0) 编辑
摘要:一、setPathEffect()这个方法一看就和path有关,顾名思义,它就是给path设置样式(效果)的。PathEffect这个路径效果类没有具体的实现,效果是由它的六个子类实现的:这六个子类分别可以实现不同的路径效果:下面,我们来用代码来具体实现一下。二、测试代码2.1 代码框架首先初始化p... 阅读全文
posted @ 2015-02-22 22:25 developer_Kale 阅读(13538) 评论(2) 推荐(1) 编辑
摘要:一、setMaskFilter(MaskFilter maskfilter)setMaskFilter(MaskFilter maskfilter)是paint中的方法,它可以用来对图像进行一定的处理。这个方法需要传入一个MaskFilter对象。但MaskFilter类中没有任何实现方法,所以我们... 阅读全文
posted @ 2015-02-22 21:15 developer_Kale 阅读(9664) 评论(0) 推荐(0) 编辑
摘要:TextPaint是paint的子类,用它可以很方便的进行文字的绘制,一般情况下遇到绘制文字的需求时,我们一般用TextPaint所提供的方法。开始学习如何绘制文字之前,我们必须要先了解下android中文字是怎么绘制到屏幕上的,文字的格式又是怎么样的。一、FontMetrics1.1 理论知识... 阅读全文
posted @ 2015-02-22 20:05 developer_Kale 阅读(32033) 评论(4) 推荐(2) 编辑
摘要:一、setXfermode(Xfermode xfermode)Xfermode国外有大神称之为过渡模式,这种翻译比较贴切但恐怕不易理解,大家也可以直接称之为图像混合模式,因为所谓的“过渡”其实就是图像混合的一种,这个方法跟我们上面讲到的setColorFilter蛮相似的。查看API文档发现其果然... 阅读全文
posted @ 2015-02-21 20:53 developer_Kale 阅读(20436) 评论(0) 推荐(2) 编辑
摘要:一、简介setColorFilter(ColorFilter filter)设置颜色过滤,这个方法需要我们传入一个ColorFilter参数同样也会返回一个ColorFilter实例。我们在setColorFilter(ColorFilter filter)的时候可以直接传入ColorMatrixC... 阅读全文
posted @ 2015-02-21 18:31 developer_Kale 阅读(20070) 评论(1) 推荐(4) 编辑
上一页 1 2 3 4 5 6 ··· 10 下一页
网站流量统计工具