Android
Small_Cake
一般还不如不干,要干就干最好!
展开
-
Activity管理器,方便杀死指定Activity和所有Activity
public class ActivityCollector { public static List<Activity> activities = new ArrayList<Activity>(); public static void addActivity(Activity activity) { activities.add(activity); }原创 2016-10-31 17:06:57 · 1133 阅读 · 0 评论 -
Service进程间通信AIDL
AIDL是Android Interface Definition Language的缩写,意思就是安卓接口定义语言。IPC是Interprocess Communication的缩写,意思就是进程间通信。类似于其他你使用过的接口定义语言,AIDL允许你使用接口来实现客户端和服务端的进程通信(IPC)。在Android系统中,一个进程是不能访问另一个进程的内存的,也就是无法数据原创 2016-06-13 11:40:45 · 412 阅读 · 0 评论 -
Activity的启动模
四种启动模式:standard,singleTop,singleTask,singleInstance通过在AndroidManifest.xml的标签中指定android:launchMode属性来设置启动模式standardstandard是活动的默认启动模式,我们知道Android是通过栈来管理活动的,而此模式,系统不会验证此活动是否已经存在都会在栈顶创建新的活动实例原创 2016-06-01 10:11:00 · 359 阅读 · 0 评论 -
Android自定义标尺控件RulerView
让用户直接输入身高体重,这种体验真是太糟糕啦。我们不妨让用户启动手指滑动标尺来确定他的身高体重,这样不是更有趣么?package com.lw.widget;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;import android原创 2016-04-26 10:16:14 · 5809 阅读 · 2 评论 -
AndroidStudio1.5.1正式版使用笔记
1.突然菜单栏,没有了,找了半天:在View中找到Toobar勾选就可以了~!2.上传应用到商店,需要截图,以前傻傻用手机截屏,然后再传给电脑!其实在as中的Android Monitor中就有这个功能,然后保存到电脑上就可以了!3.项目目录项,需要像eclipse里面一样显示,找了半天,其实点击扳手就可以设置了,选择Flatten Packages!原创 2016-04-14 17:19:24 · 651 阅读 · 0 评论 -
EditText小数位控制在两位小数
突然又要用到控制EditText小数位控制在两位小数,记得以前找过写过这个功能,发现又忘记了,于是代码翻了半天,找了出来!最小的功能也需要不断的记忆!package com.util;import android.text.Editable;import android.text.TextWatcher;import android.widget.EditText;public c原创 2016-04-11 11:04:55 · 354 阅读 · 0 评论 -
ViewPager顶部导航
根据老师讲课写下来的,虽然老师讲课只用了2个小时,但自己跟着写和修改却用了整整一天啊,这个导航用的地方确实还真多,写上注释,记录下来!1.主要的自定义的类,ViewPagerIndicator继承自LinearLayoutpackage cq.cake.customview;import android.content.Context;import android.conte原创 2016-03-25 13:58:24 · 382 阅读 · 0 评论 -
Android中点击文字打开QQ对话
公司有的时候需要实现和QQ客服对话,以便方便的解决用户的问题,因为不想打电话!那怎么来通过点击app中的文字就可以实现和QQ客服的对话呢?其实非常简单,只需要通过WebView来加载qq相关对话连接即可,上代码package cq.cake.qqdemo;import android.os.Bundle;import android.support.v7.app.AppCom原创 2016-03-22 16:21:31 · 986 阅读 · 0 评论 -
ListView滑动删除
ListView滑动删除肯定大家都见过,比如QQ对话列表中就可以!那么这个功能具体是怎么实现的呢,ListView展示数据和列表点击都很容易实现,但是如果是触摸,就没法了,必须通过我们自己的努力来改写它来实现!先上效果图:不知道是不是大家想要的效果,主页代码很简单:(MainActivity.java)package cq.cake.dellistview;im原创 2016-01-29 15:30:00 · 629 阅读 · 0 评论 -
关于SearchView无法展开的问题?
bug天天有,今年特别多~!好好的SearchView,别人用的好好的,GOOGLE的APIDEMO里面也好好的,就是我的不行~!真的是我运气背吗,我想是的!天将降大任于斯人也必先苦其心志,劳其。。。1.最先SearchView我是使用的菜单的方式添加~!但是添加后点击图标居然它毫无反应,不展开,默认不是应该出现编辑框么? <item原创 2016-01-05 15:03:47 · 2841 阅读 · 4 评论 -
我的工具真是太少了--IOS弹出提示框
1.为什么做这个弹出框?a.Android自带的弹出框确实太丑了,而且版本不同弹出的效果还不一样!b.纯粹的new一个AlertDialog要写很多行,代码维护不便,重复劳动啊!c.代码看起多,不简洁,肯定不爽!2.如何做一个简洁的弹出框用于提示!a.建立一个class继承Dialogpublic class IOSDialog extends Dialog {pu原创 2015-10-21 15:54:44 · 758 阅读 · 0 评论 -
git学习之路
1.GIT工具的下载windows地址:https://git-for-windows.github.io/ 下载还是官网地址最好,可以获得最新的git工具.2.Git的安装非常简单,直接下一步下一步就完成了。安装完成后,在cmd命令中看看版本:git version3.设置Git用户名和邮箱git config --global user.name "tiger"原创 2016-06-15 10:41:15 · 298 阅读 · 0 评论 -
Gson关于对内部类的序列化
我们都知道Gson可以把一个json格式的数据直接序列化为这个对象的List集合通过方法:Gson gson = new Gson();List cats = gson.fromJson(goods.toString(), new TypeToken>(){}.getType()); 这样的用法非常的方便但是如果Cat这个类里面还包含一个类的集合呢,而不仅仅是一个类呢。p原创 2016-06-23 14:10:59 · 2412 阅读 · 0 评论 -
控制EditText只能输入两位小数,且第一位不能为点,也不能出现两个点
@OnTextChanged(value = et_money, callback = OnTextChanged.Callback.AFTER_TEXT_CHANGED) void afterNameTextChanged(Editable s) { if (s.length()==1&&s.toString().equals(".")){ etMo原创 2016-10-31 17:04:21 · 1191 阅读 · 0 评论 -
Zxing关于Android端生产二维码
public static Bitmap createQRCode(String text, int size) { try { Hashtable<EncodeHintType, String> hints = new Hashtable<>(); hints.put(EncodeHintType.CHARACTER_SET, "ut原创 2016-10-31 10:29:55 · 543 阅读 · 0 评论 -
Android九宫格抽奖
package cq.cake.luckdraw;import android.graphics.Color;import android.os.Bundle;import android.os.CountDownTimer;import android.support.v7.app.AppCompatActivity;import android.util.Log;import andr原创 2016-10-09 14:45:47 · 2370 阅读 · 8 评论 -
深入学习百度地图Android SDK v4.0.0【第二关】公交地图
公交地图必不可少,而且相对基础地图来说要麻烦一些,所以单独列出来写一篇!此篇是在已经搭建配置好基础地图的基础上来说的,不明白请看:深入学习百度地图Android SDK v4.0.0【第一关】基础地图 ,为了更好的扩展更多地图相关,首页就改用列表按钮的方式来进入不同的地图页面了!第一步【创建可以查询公交路线的地图】1.为了更简洁,对BaseMapActivity做了更近一步的改进,原创 2016-08-13 17:55:46 · 1405 阅读 · 1 评论 -
EventBus关于在FragmentActivity和Fragment中传值把我整安逸
大家都知道传值用EventBus非常方便,于是我也想get这个技能啊。马上用起来,第一步注册。第一步就遇到问题了,居然在注册的时候报Subscriber class cq.cake.activity.GoodInfoActivity and its super classes have no public methods with the @Subscribe annotation:大概的原创 2016-07-06 16:26:56 · 1671 阅读 · 2 评论 -
ToolBar学习笔记(1)
以前一直不用Toolbar,都是自己定义。但是无法与系统菜单控件联动,不美观不规范。自己也要写xml和相关view的点击事件。所以决定一定要好好的学好Toolbar,美观规范起来!因为ActionBar在低版本的手机上确实太丑了,所以Android从API22后遗弃了ActionBarActivity,而改用AppCompatActivity,提升了美观,而使用却差不多!1.AppCompat原创 2016-07-30 09:34:19 · 508 阅读 · 0 评论 -
Toolbar和ListView一起用的,ListView显示步完整
现在越来越喜欢用Toolbar,但今天遇到一个问题,记录下来!就是在Toolbar下面添加ListView后,ListView里面的数据加载过多,就会导致数据显示不完整,首先我想到了有的人说重写ListView测量高度的方法。其实不然,是因为我们自动生成Activity后Toolbar里面加入了滚动属性,导致和ListView冲突而现实不完整!就是app:layout_scroll原创 2016-08-02 16:15:00 · 1130 阅读 · 0 评论 -
TimeUtils时间戳转换为指定格式的时间
有的时候我们得到的是时间戳,需要转换为能看懂得时间格式。这个转换其实很简单,但是网上找了很多,转换出来都不对!终于发现一种情况,直接在format里面把时间乘以1000,而要在外面把时间算好了再加入进来!package cq.cake.util;import java.text.SimpleDateFormat;/** * MyApplication -- cq.cake.ut原创 2016-07-26 13:55:03 · 1057 阅读 · 0 评论 -
UniversalImageloader使用中遇到的问题
1.不显示图片过程:因为我是在代码中循环添加的ImageView,但是使用的顺序错误,我是先加载图片,然后把这个图片控件添加到它的上级控件LinearLayout中。错误:call to OpenGL ES API with no current context原因:OGL ES所在的线程被阻塞或者被挂起,导致渲染设备上下文丢失。解决方案:将可能导致渲染线程被阻塞或被挂起的代码移动原创 2016-07-18 09:58:48 · 502 阅读 · 0 评论 -
我的工具真是太少了--SharePreferences保存和读取
1.为什么要用到这个?a.方便快捷,无需权限什么的就可以保存数据了b.但是保存的数据不加密,使用键值对的形式保存2.上代码--package com.cake.ui;import com.cake.sharedpreferences.R;import android.app.Activity;import android.content.SharedPr原创 2015-10-24 11:13:29 · 441 阅读 · 0 评论 -
RecyclerView的自适应高度
RecyclerView一般用来全屏显示是最好的,不过有的时候我们也需要用它来做九宫格等控件,这个时候不得不用到自适应高度来显示这部分了!其实只要我们在装载完成它的数据集之后,在自定义的LayoutManager中监听它的子控件的高度就可以了~!效果如图:这张图的中间部分就是使用的RecyclerView自适应高度来做的!下面是Manager的自定义:原创 2015-12-29 10:21:02 · 6397 阅读 · 1 评论 -
深入学习百度地图Android SDK v4.0.0【第七关】周边雷达
本来想学习一下Andriod Wear的开发,但是买不起Wear啊!直接跳过,开始学习周边雷达地图部分!这个功能非常有用,能知道你周围和你使用相同软件的人,牛郎织女一人安装一个,再也不用去鹊桥相会了,随时都能知道对方在哪里,可是怎么多出来那么多牛郎织女!第一步【注册周边雷达】要使用此功能,需要对你的想用周边雷达功能的App进行注册,相当于绑定,而且可以绑定多个!周边雷达注册第二原创 2016-09-02 11:29:31 · 1790 阅读 · 3 评论 -
android.os.BinderProxy cannot be cast to cq.cake.servicetest.MyService错误
当出现这个错误的时候,多半是因为绑定的服务属于远程服务造成的。1.什么是远程服务?非常简单,就是在需要注册的Service的时候,把它的android:process属性指定为:remote就可以了如果这个时候想绑定服务,那么就会出错了,因为这个时候服务中的继承的Binder是android.os.BinderProxy,这个时候在服务连接中的onServiceConnec原创 2016-05-31 14:10:18 · 2553 阅读 · 0 评论 -
Activity生命周期图
原创 2016-05-07 11:30:50 · 252 阅读 · 0 评论 -
Podometer计步器
1.相信越来越多的人开始注重健康而运动,那怎样才能更有动力呢,用数据记录下来,朋友之间相互比拼会更有东西。这也是现在计步器流行的主要原因之一!2.原理,其实大部分的应用都是通过手机的重力传感器的监听来做的!你会发现,几乎所有计步器,只要晃动手机,都可以记步,因为晃动中就触发了重力传感器!今天我们就来解析一下由Levente Bagi创建的计步器Podometer源码!网上也有很多其他的,但原创 2016-05-06 11:31:46 · 941 阅读 · 0 评论 -
PreferenceActivity的使用
1.PreferenceActivity主要应用与对用户的偏好设置,通过它的命名也可以看出来这点!我们都知道Android持久化有四种:SQLite、文件存储、Preference、ContentProvider而其中Preference是以类似Map的键值对形式存储的,最适合用来保存用户个人设置之类的信息2.怎么来使用呢,只要一个类继承它,并添加一个xml文件来创建它的页面就可以原创 2016-05-04 11:09:58 · 468 阅读 · 0 评论 -
LibZXing二维码工具
二维码在现在智能机普及的社会越来越方便,自己开发过程复杂!利用剥离出来的框架开发,方便简单!下面是利用Zxing框架开发的Demopackage cq.cake.libzxing;import android.content.Intent;import android.graphics.Bitmap;import android.graphics.BitmapFactory;impo原创 2016-04-15 14:44:42 · 1904 阅读 · 0 评论 -
自定义显示动态图的Android控件
1.自定义的显示动态的类package cq.cake.gifimageview;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import androi原创 2016-03-25 14:36:00 · 889 阅读 · 0 评论 -
地区联动菜单
1.一直想总结一下联动菜单,但一直由于自己懒,没有写下来,在此立志,一定要写写,哪怕组合也要组合一个出来!原创 2016-03-31 11:25:36 · 313 阅读 · 0 评论 -
我的工具太少了之Android无限轮播图片,最后一张过度动画很重要
1.为什么要写个无限轮播图片?使用录太高啦!2.为什么要自己写个无限轮播,Android的FilterView就可以啊!自己写的才是最好的,FilteView滑动太不自然啦!好啦,废话不多说,看图说代码~!上面怎么没有图片?O(∩_∩)O~,不要在意这些细节,大家是来学习代码的,图片我用色块代替了!好,下面是代码部分,由于轮播使用频繁,我就自定义了一个类原创 2015-12-08 11:32:17 · 1204 阅读 · 0 评论 -
Long转换为有两位小数的G,M,KB,B
在许多应用中都要用到文件的大小,展示给用户,下载尤其多~!但单位的转换容易丢失精度,自己又想要两位精度~!网上找了一些来,看了明白了,后面要用又忘记了,于是特此写个博客记录下来,大家共勉!好记心不如烂笔杆。上代码: public static String convertFileSize(long size) { long kb = 1024; long原创 2016-01-27 16:10:54 · 3011 阅读 · 0 评论 -
ListView单行选中变色
网上找了很多ListView选中后变色的文章,但都是什么字体设置变色选择器,要不就是ListView设置变色器,单行选中变色的始终找不到!甚至还有人说用ListView的onItemSelectedListener方法,可是我用了这个方法,居然一点反应都没有好不好!最后才看到有人说这个方法是针对有实体键盘的,用实体键盘的上下键才会触发这个事件~!现在还有几个手机用实体键盘啊(老原创 2016-01-20 09:40:55 · 2493 阅读 · 0 评论 -
Service与远程进程通过Messenger进行远程通信(IPC)
有的时候服务不仅需要为本进程服务,还需要为其他进程提供服务。这个时候我就需要用到进程与进程之间的通信!使用Messenger的步骤:1.首先使服务实现一个Handler,由其接受来之客户端的每个调用的回调2. Handler用于创建Messenger对象(对Handler的引用)3.Messenger创建一个IBinder对象,服务通过onBind()方法返回给客户端4原创 2016-06-12 10:36:31 · 415 阅读 · 0 评论 -
Service后台运行,无网络连接。而打开应用页面到前台,恢复网络的超级大坑
目前发现是小米手机才有这个坑!我写了一个计步器的应用,需要隔段网络保存数据。用户不可能一直开启主页面在前台运行吧,于是用到了后台服务。但是遇到一个奇葩的问题,按Home键退出页面后一会儿,网络就断开了。我是通过打印日志发现这个问题的!最开始我以为是锁屏或者黑屏才会如此,但是如果我不退出页面,锁屏后网络依然是可以访问的!最后判定为页面被杀死后,网络就会中断!我百思不得其解,网上找了很多方法都原创 2016-06-12 16:32:00 · 1216 阅读 · 0 评论 -
深入学习百度地图Android SDK v4.0.0【第十关】短链分享
有的时候我们需要把自己所在的位置信息分享给朋友让其知道,方便对方来寻找自己!所以百度提供的短链分享还是非常有用的!package cq.cake.chwl.ui;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.view.Menu;impo原创 2016-09-12 11:38:53 · 1153 阅读 · 0 评论 -
深入学习百度地图Android SDK v4.0.0【第六关】室内地图
百度地图居然推出了室内地图,那不是可以看看女神的家。你想多了,目前室内地图只支持大型购物商场,机场,火车站,医院等,覆盖了全国大概600个大型购物中心,继续增加中。目前用处不大,但也不错啊,去一些商场逛,妈妈再也不用担心我找不到厕所啦!package cq.cake.chwl.ui;import android.content.DialogInterface;import android原创 2016-08-30 16:50:57 · 1715 阅读 · 1 评论 -
深入学习百度地图Android SDK v4.0.0【第五关】瓦片图层
官方说是可以使用自己的图片,但是图片的大小和规格都没有明说,主要用于添加自己的图层信息,有在线和离线两种!估计使用率很低,也就不多说了!package cq.cake.chwl.ui;import android.content.res.AssetManager;import android.graphics.Bitmap;import android.graphics.BitmapFac原创 2016-08-30 16:42:02 · 5334 阅读 · 6 评论