摘要: Controller控制器 import android.app.Dialog; import android.app.ProgressDialog; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; 阅读全文
posted @ 2017-02-07 10:21 水柠檬QAQ 阅读(356) 评论(0) 推荐(0)
摘要: 内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。 内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可 阅读全文
posted @ 2017-02-06 16:33 水柠檬QAQ 阅读(481) 评论(2) 推荐(0)
摘要: 示例代码: view.setTag(R.string.action_settings,hodler.content); 接收两个值,一个是key值,必须是唯一值,而且要写在values/ids.xml里面,例如 <resources> <item type ="id" name = "ffffff" 阅读全文
posted @ 2017-02-05 11:07 水柠檬QAQ 阅读(336) 评论(0) 推荐(0)
摘要: 前言 Android中绘图离不开的就是Canvas了,Canvas是一个庞大的知识体系,有Java层的,也有jni层深入到Framework。Canvas有许多的知识内容,构建了一个武器库一般,所谓十八般武艺是也,Paint是Canvas的一个重要的合作伙伴,但今天要讲的不是Canvas也不是Pai 阅读全文
posted @ 2017-01-19 15:01 水柠檬QAQ 阅读(3195) 评论(0) 推荐(0)
摘要: LinearGradient 线性渐变渲染器 LinearGradient中文翻译过来就是线性渐变的意思。线性渐变通俗来讲就是给起点设置一个颜色值如#faf84d,终点设置一个颜色值如#CC423C,然后在一个区域内绘图,这个图像的颜色将呈现非常美妙的效果,颜色会从起点颜色到终点颜色过渡。给一张图, 阅读全文
posted @ 2017-01-19 14:52 水柠檬QAQ 阅读(1074) 评论(0) 推荐(0)
摘要: android5.0以后不能使用隐式intent :需要指定Intent的ComponentName信息:intent.setComponent(xxx),或指定Intent的setPackage("包名"),如果两者都没有指定的话将会报以上错误。尤其在framework层启动APP层的servic 阅读全文
posted @ 2017-01-12 17:04 水柠檬QAQ 阅读(3444) 评论(0) 推荐(2)
摘要: public class DataCleanManager { /** * * 清除本应用内部缓存(/data/data/com.xxx.xxx/cache) * * * * @param context */ public static void cleanInternalCache(Contex 阅读全文
posted @ 2016-12-15 11:42 水柠檬QAQ 阅读(1841) 评论(0) 推荐(0)
摘要: ublic class MemorySpaceCheck { /** * 计算剩余空间 * @param path * @return */ public static String getAvailableSize(String path) { StatFs fileStats = new Sta 阅读全文
posted @ 2016-12-15 11:39 水柠檬QAQ 阅读(1479) 评论(0) 推荐(0)
摘要: 1.布局优化 首先删除布局中无用的控件和层级,其次有选择地使用性能较低的viewgroup,比如布局中既可以使用RelativeLayout和LinearLayout,那我们就采用LinearLayout,因为RelativeLayout的功能比较复杂,它的布局需要花费 更多的CPU时间。 布局优化 阅读全文
posted @ 2016-09-19 17:47 水柠檬QAQ 阅读(591) 评论(1) 推荐(1)
摘要: 首先在res/drawable/name1.xml/定义一组图片集合: <?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android" a 阅读全文
posted @ 2016-09-09 17:00 水柠檬QAQ 阅读(419) 评论(1) 推荐(1)
摘要: android自定义动画注意是继承Animation,重写里面的initialize和applyTransformation,在initialize方法做一些初始化的工作,在applyTransformation方法进行相应的轨阵变化即可! 直接上demo! public class Rotate3 阅读全文
posted @ 2016-09-09 16:41 水柠檬QAQ 阅读(1689) 评论(0) 推荐(0)
摘要: package com.example.mvp; import cn.ljuns.temperature.view.TemperatureView;import presenter.ILoginPresenter;import presenter.LoginPresenterCompl;import 阅读全文
posted @ 2016-09-07 15:50 水柠檬QAQ 阅读(2138) 评论(0) 推荐(1)
摘要: 效果图 package cn.ljuns.temperature.view; import com.example.mvp.R; import android.content.Context;import android.content.res.TypedArray;import android.g 阅读全文
posted @ 2016-09-06 16:12 水柠檬QAQ 阅读(1507) 评论(3) 推荐(1)
摘要: 自定义view里面的onDraw方法,在这里我们可以绘制各种图形,onDraw里面有两个API我们需要了解清楚他们的用法:Canvas 和 Paint. Canvas翻译成中文就是画布的意思,Canvas负责进行绘制各种各样的图形,它有如下的一些绘制图形方法: drawArc 绘制弧 drawBit 阅读全文
posted @ 2016-09-05 16:36 水柠檬QAQ 阅读(3326) 评论(0) 推荐(0)
摘要: 实现原理: MainActivity 用来更新UI,和显示业务逻辑的结果! LoginPresenterCompl 用来处理 业务逻辑 ILoginPresenter 业务处理类抽象出来的接口 ILoginView activity抽象出来的接口 1.为什么要把activity的UI更新方法抽象出来 阅读全文
posted @ 2016-09-02 14:06 水柠檬QAQ 阅读(389) 评论(0) 推荐(1)
摘要: 上篇介绍了跨进程实时通讯http://www.cnblogs.com/xiaoxiaing/p/5818161.html 但是他有个缺点就是服务端无法推送消息给客户端,今天这篇文章主要说的就是服务器推送数据给客户端 原理:客户端注册回调函数,并把回调的对象当做参数传递给服务端,这种服务端调用函数其实 阅读全文
posted @ 2016-08-29 17:28 水柠檬QAQ 阅读(469) 评论(0) 推荐(1)
摘要: 不需要AIDL也不需要复杂的ContentProvider,也不需要SharedPreferences或者共享存储文件! 只需要简单易懂的Messenger,它也称为信使,通过它可以在不同进程中传递message对象,在message中放入我们需要传递的数据你就可以实现跨进程通讯和传递数据。废话不多 阅读全文
posted @ 2016-08-29 15:26 水柠檬QAQ 阅读(4305) 评论(0) 推荐(0)
摘要: 直接上代码:注释都写的很清楚了。 public class Entry implements Parcelable{ public int userID; public String username; public boolean isMale; public Book book;//序列化对象可 阅读全文
posted @ 2016-08-26 10:10 水柠檬QAQ 阅读(331) 评论(1) 推荐(1)
摘要: 1.当你在androidmanifest里面定义了一个或多个action时 你使用隐式意图其他activity或者service时,规定你隐式里面的action必须匹配XML中定义的action,可以只匹配XML文件一个就行 2.当你在androidmanifest里面定义了一个或多个categor 阅读全文
posted @ 2016-08-25 17:58 水柠檬QAQ 阅读(1860) 评论(0) 推荐(2)
摘要: 废话不多说,直接贴代码! 所谓的双缓存,第一就是缓存在内存里面,第二就是缓存在SD卡里面,当你需要加载数据时,先去内存缓存中查找,如果没有再去SD卡中查找,并且用户可以自选使用哪种缓存! 缓存内存和缓存SD都有一个共同的方法,就是put和get方法(存数据和取数据),因此我们采用工厂模式! 新建一个 阅读全文
posted @ 2016-08-15 17:10 水柠檬QAQ 阅读(1600) 评论(0) 推荐(0)