- 博客(36)
- 资源 (4)
- 收藏
- 关注
原创 Launcher开发——入门篇
文章概述:1.什么是Launcher2.新建一个Launcher工程3.Apps去哪了4.显示桌面背景最近换了新工作(๑´ㅁ`),又是要去接触新的知识了。闲话不多说,让我们一起来认识一下今天的主角——launcher什么是Launcher对于初级开发者来说launcher可能还有些陌生,它俗称“HomeScreen”也就是我们开机
2016-10-13 13:52:03
3814
转载 Android Studio上方便使用butterknife注解框架的偷懒插件Android Butterknife Zelezny
关于7.0.0的ButterKnife的各种用法和功能,可以参考ButterKnife的github上的主页:http://jakewharton.github.io/butterknife/ 言归正传开始说说Android Butterknife Zelezny这个插件,事实上这是个Android Studio的plugin,他可以让你在添加Butterkinfe注解时偷
2015-08-06 16:09:36
678
原创 解决调用系统拍照保存的图片被压缩的问题
这几天在做微信分享,要求实现拍照分享的功能。本想用网上的方法调用系统的相机然后拍照保存就可以了,没想到保存后的图片是压缩过的。没办法,自己动手吧。研究一阵子后发现原来原因就是这句话bitmap.compress(Bitmap.CompressFormat.PNG, 100, fos);图片压缩了,,既然知道原因了,,我改还不行么,,废话不多说了,直接把代码贴过来,不难大家应该很容易就看
2015-07-29 10:08:23
1441
转载 Java关键字static、final使用小结
static 1. static变量 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量;另一种是没有被static修饰的变量,叫实例变量。两者的区别是: 对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直接访问(方便),当然也可以通过对象来访问(但是
2015-07-27 09:48:11
310
转载 点击空白处隐藏软键盘
首先获得软键盘的对象InputMethodManager imm= (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);然后注册空白处的touch事件if (event.getAction() == MotionEvent.ACTION_DOWN) { System.out.println("dow
2015-07-16 10:44:52
452
转载 Android4.3 蓝牙BLE初步
一、关键概念:Generic Attribute Profile (GATT)通过BLE连接,读写属性类小数据的Profile通用规范。现在所有的BLE应用Profile都是基于GATT的。 Attribute Protocol (ATT)GATT是基于ATT Protocol的。ATT针对BLE设备做了专门的优化,具体就是在传输过程中使用尽量少的数据。每个
2015-07-07 09:36:17
351
转载 android中ListView的定位:使用setSelectionFromTop
本文转自泡在网上的日子如果一个ListView太长,有时我们希望ListView在从其他界面返回的时候能够恢复上次查看的位置,这就涉及到ListView的定位问题:解决的办法如下:// 保存当前第一个可见的item的索引和偏移量int index = mList.getFirstVisiblePosition();View v = mList.getChildAt(0)
2015-06-19 09:46:58
653
原创 apk反编译去广告
今天有人求助想把“简网”生成的app中的广告去除掉→_→忍不住感叹下:现在科技就是发达,app都可以自动生成了。不过免费还是有代价的,那就是有广告。正好我也想试试手,今天就来开始学习一下如何反编译apk去掉其中的广告内容吧~
2015-06-12 09:17:13
4974
转载 Android 布局优化
本文转载自stormzhang 的博客Android 布局优化在开发过程中我们经常说性能优化,但性能优化是一个比较宽泛的概念。在Android开发中性能优化可能包括:Java代码优化, 算法优化, SQLite优化, 布局优化等。那么这篇博客就来总结并分享下Android开发中的布局优化。布局原则在Android UI布局过程中,通过遵守一些惯用、有效的布局原则,我们可以制
2015-06-10 14:06:46
469
原创 博客搬家啦~~
今天要从新好好的写技术比博客,,要不然好多东西转头就忘了,记录下来日常学到的技术点,也能分享给大家这是我原来的博客地址http://www.cnblogs.com/zzsakurazz/
2015-06-09 10:28:32
444
原创 Android Studio 快捷键(MAC)
现在很多程序员标配都是MAC,咱也不能总在虚拟机里办公哈 ctrl+space/ ctrl+alt+space 智能提示 alt+command+L 格式化代码 command+S 保存 command+d 复制当前行 command+x 删除当前行 alt+enter 智能补全 command+f 查找 command+/ 或 command+Shift+/ 注
2015-06-09 10:14:44
638
转载 【转】Universal-Image-Loader(android图片缓存)
原文http://write.blog.youkuaiyun.com/postedit?ref=toolbar项目介绍:Android上最让人头疼的莫过于从网络获取图片、显示、回收,任何一个环节有问题都可能直接OOM,这个项目或许能帮到你。Universal Image Loader for Android的目的是为了实现异步的网络图片加载、缓存及显示,支持多线程异步加载。它最初来源于Fedor Vl
2015-06-09 10:07:41
427
转载 Android布局文件layout.xml的一些属性值
第一类:属性值 true或者 falseandroid:layout_centerHrizontal 水平居中android:layout_centerVertical 垂直居中android:layout_centerInparent 相对于父元素完全居中android:layout_alignParentBottom 贴紧父元素的下边缘android:layout_alig
2015-06-09 10:07:36
515
原创 Service服务
一、 Service简介Service是android 系统中的四大组件之一(Activity、Service、BroadcastReceiver、ContentProvider),它跟Activity的级别差不多,但不能自己运行只能后台运行,并且可以和其他组件进行交互。service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比
2015-06-09 10:07:31
501
原创 Service 两种启动方式
Service的生命周期Service的生命周期方法比Activity少一些,只有onCreate,onStart,onDestroy 我们有两种方式启动一个Service,他们对Service生命周期的影响是不一样的。 1通过startService Service会经历onCreate->onStart stopService的时候直接onDestroy 如果是调用者(T
2015-06-09 10:07:28
401
原创 Service练习——通过Messenger(信使)来实现IPC通讯(Messenger底层使用AIDL实现)
通过Messenger(信使)来实现IPC通讯(Messenger底层使用AIDL实现)步骤:服务端1、在Service中创建一个Handler对象,用于处理消息2、在Service中创建一个Messenger对象,并绑定Handler3、在onBind方法中通过Messenger.getBinder方法返回绑定的对象客户端4、通过bindService来绑定一个服务,在提供的Servic
2015-06-09 10:07:25
414
原创 Android练习—修改背景颜色
Activity值传递的一个小练习,不多说直接上代码。---------------------------XML部分----------------------------- 1 RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://s
2015-06-09 10:07:20
696
原创 Android练习——Spinner二级联动_城市选择
样式部分xml 1 RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 andro
2015-06-09 10:07:15
4843
3
转载 Android实现电话拨号器和短信发送器
电话拨号器和短信发送器是Android初学者很好的练习项目,今天就找了两个写得很不错的例子学习下电话拨号器实现原理:用户输入电话号码,当点击拨打的时候,由监听对象捕获,监听对象通过文本控件获取到用户输入的电话号码,由于系统已经实现了电话拨号功能,所以我们只需要调用这个功能就可以了。步骤:1.界面布局2.编写Activity3.使用意图过滤器激活电话拨号功能4.添加电话服
2015-06-09 10:07:10
631
原创 Android 实现页面跳转并传递参数
首先我们来看一下实现的功能: 第二,我们看一下实现这个功能,总共会接触到哪些文件和代码。1、实现本功能总共涉及如下6个文件2、实现本功能,总共涉及如下6个文件中的如下代码:(1)效果:(2)为按钮编写响应事件函数 sendMessage(3)创建第二个activity,即第二张页面,并在onCreate方法中编写页面初始化的方法(相当于iOS中
2015-06-09 10:07:07
2579
原创 Android布局
Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。Android的五大布局分别是LinearLayout(线性布局)、FrameLayout(单帧布局)、RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)和TableLayout(表格布局)。 LinearLa
2015-06-09 10:07:04
380
原创 jsp中 response和request区别
1、response 属于重定向请求; 其地址栏的URL会改变; 会向服务器发送两次请求; 2、 request 属于请求转发; 其地址栏的URL不会改变; 向服务器发送一次请求; 举一个区分它们的简单实例: A向B借钱
2015-06-09 10:06:59
476
转载 浅谈java异常[Exception]
本文转自:focusJ一. 异常的定义在《java编程思想》中这样定义 异常:阻止当前方法或作用域继续执行的问题。虽然java中有异常处理机制,但是要明确一点,决不应该用"正常"的态度来看待异常。绝对一点说异常就是某种意义上的错误,就是问题,它可能会导致程序失败。之所以java要提出异常处理机制,就是要告诉开发人员,你的程序出现了不正常的情况,请注意。记得当初学习java的时候,异常总
2015-06-09 10:06:44
291
转载 经典的Java基础面试题集锦
本文转自:deepinmind问题:如果main方法被声明为private会怎样?答案:能正常编译,但运行的时候会提示”main方法不是public的”。问题:Java里的传引用和传值的区别是什么?答案:传引用是指传递的是地址而不是值本身,传值则是传递值的一份拷贝。问题:如果要重写一个对象的equals方法,还要考虑什么?答案:hashCode。问题:Java的”一次编
2015-06-09 10:06:39
352
原创 单例设计模式的一点心得
解决的问题:保证内存中只有一个对像(比如多个程序使用同一个配置信息);如 何 实现: 1、 不允许其它程序用new 创建该类对象 2、 在该类创建一个本类实例 3、 对外提值一个方法让其它程序获取该对象 步骤: 1、 私有化该类构造函数; 2、 通过new在本类
2015-06-09 10:06:36
253
原创 常见面试题之Overload和Override的区别
Overload:顾名思义,就是Over(重新)——load(加载),所以中文名称是重载。它可以表现类的多态性,可以是函数里面可以有相同的函数名但是参数名、返回值、类型不能相同;或者说可以改变参数、类型、返回值但是函数名字依然不变。Override:就是ride(重写)的意思,在子类继承父类的时候子类中可以定义某方法与其父类有相同的名称和参数,当子类在调用这一函数时自动调用子类的方法,而父类相
2015-06-09 10:06:34
865
原创 比较器(Comparable、Comparator)类及 二叉树的排序算法
之前Arrays 类中存在sort() 方法, 此方法可以直接对 对象数组进行排序。1.Comparable接口可以直接使用java.util.Arrays 类进行数组的排序操作,但对象所在的类必须实现Comparable 接口,用于指定排序接口。Comparable 接口定义如下:public interface Comparable{public int compareTo
2015-06-09 10:06:29
418
原创 Java中的递归原理分析
本文转自:红客联盟解释:程序调用自身的编程技巧叫做递归。程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力
2015-06-09 10:06:26
395
原创 二分查找法
二分查找,顾名思义就是分两份查找XD。采用二分法查找时,数据需是排好序的,这是使用二分查清找的前提。该算法的基本实现思路是: 1.先将数据排序 2.确定中间位置mid=(first+last)/2; 3.比较所要查找的关键字 key与中间位置的关键字的大小,如果比key和mid.key相等则返回, key比mid.key大(假定为升序)这所要查找的关键字在mid和
2015-06-09 10:06:24
370
原创 java中的关键字static(静态变量)和final定义常量
1 package point; 2 3 class Point { 4 5 int x = 0; 6 int y = 0; 7 static int z = 100; // 定义静态变量z,类变量 8 static final double PI = 3.1415926;// final定义常量,它的值在运行时不能被改变
2015-06-09 10:06:19
565
转载 面向对象三大基本特性,五大基本原则
作者:Leo Chin出处:http://www.cnblogs.com/hnrainll/透切理解面向对象三大基本特性是理解面向对象五大基本原则的基础.三大特性是:封装,继承,多态 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装是面向对象的特征之一,是对象和类概念的主要特性。 简单的说,一个类就是一个
2015-06-09 10:06:16
321
原创 Android Studio 常用快捷键
最近开始学习Android Studio 的使用,不学习真的会被淘汰的⊙﹏⊙首先来看官方的介绍:Android Studio 是谷歌基于IntelliJ IDEA开发的安卓开发工具,有点类似 eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试,基于Gradle的构建支持。其他的安装配置什么的就不用说了,这些东西还是很好解决的。现在摆在
2015-06-09 10:00:48
838
转载 Android 47个小知识
Android 47个小知识1、判断sd卡是否存在 boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); 2、TextView部分文字设置颜色 TextView tv = new TextView(th
2015-06-09 09:56:15
412
原创 沉浸式状态栏调用方法
MIUI 6上大受好评的沉浸式状态栏其实是谷歌原生自带的一种样式(4.4以上版本支持),我们也可以通过带买来轻松实现 @TargetApi(19) private void setTranslucentStatus(boolean on) { Window win = getWindow(); WindowManager.LayoutParams winParams = win.ge
2015-06-09 09:35:09
587
转载 Android 缓存框架:ASimpleCache
今天用到了一个神奇的缓存矿街,用它可以代替我们常用的偏好设置(SharePreference)来保存用户的配置------------------------------------------------------以下摘自Github-----------------------------------------------1、它可以缓存什么东西?普通的字符串、json、序列
2015-06-09 09:19:06
531
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人