android基础
-琥珀川-
奋斗吧 骚年!
展开
-
仿超级课程表下拉刷新listview
先上一张效果图关于下拉刷新的ListView网上有许多开源的项目pulltorefresh下面简单介绍一下原理 下拉刷新的界面是放在listview的headerveiw中的通过改变headerview的toppadding从而达到headerview的隐藏与现实移动效果 listview有四种状态 正常状态 下拉刷新 (当手势移动距离小于某个值时原创 2015-04-03 13:24:10 · 1763 阅读 · 0 评论 -
BroadcastReceiver生命周期的探究
起因在论坛上看到这样一个问题Android开机自动运行APP——BroadcastReceiver 说可以通过BroadcastReceiver实现在AndroidManifest文件中添加<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission><receiver and原创 2015-09-06 12:56:16 · 1198 阅读 · 0 评论 -
android动画实现单摆效果
效果图最终效果又赶上了一年一度的校招季这个效果来自一道笔试题让写出思路如何实现该效果所以按耐不住还是想用代码去实现一下当然实现起来也不是很复杂思路涉及到一些基本的物理定律单摆的运动周期 T=2 * Math.PI * Math.sqrt(l / 10);单摆的运动规律为正余玄函数原创 2015-09-16 22:02:55 · 1471 阅读 · 3 评论 -
匿名内部类持外部引用造成内存泄漏问题
原文地址:http://www.2cto.com/kf/201502/378500.html 在Android常用编程中,Handler在进行异步操作并处理返回结果时经常被使用。通常我们的代码会这样实现。public class SampleActivity extends Activity { private final Handler mLeakyHandler = new Handler(转载 2015-11-09 16:11:40 · 8866 阅读 · 4 评论 -
Andriod 从源码的角度详解View,ViewGroup的Touch事件的分发机制
转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/21696315),请尊重他人的辛勤劳动成果,谢谢!今天这篇文章主要分析的是Android的事件分发机制,采用例子加源码的方式让大家深刻的理解Android事件分发的具体情况,虽然网上很多Android的事件分发的文章,有些还写的不错,但是我还是决定转载 2015-12-12 21:06:09 · 806 阅读 · 0 评论 -
android studio使用异常解决记录
异常1Failed to complete Gradle execution. Cause: A fatal exception has occurred. Program will exit.解决方法在Settings–>Gradle–>GradleVM options中加入“ -Xmx512m -XX:MaxPermSize=512m”原创 2015-12-06 16:53:46 · 857 阅读 · 0 评论 -
Android Studio 快捷键
Alt+回车 导入包,自动修正Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C 最近更改的代码Ctrl+R 替换文本Ctrl+F 查找文本Ctrl+Shift+Space 自动转载 2016-01-12 14:37:32 · 717 阅读 · 0 评论 -
ListView中convertView和ViewHolder的工作原理
转载地址:点击打开链接LsitView和Adapter参考:http://www.cnblogs.com/xiaowenji/archive/2010/12/08/1900579.html工作原理: 1.ListView针对List中每个item,要求adapter给我一个视图(getView) 2.一个新的视图被返回并显示如果我们有上亿转载 2016-03-01 17:23:23 · 656 阅读 · 0 评论 -
ViewStub用法
转载地址:点击打开链接 在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局。那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在代码中动态的更改它的可见性。这样的做法的优点是逻辑简单而且控制起来比较灵活。但是它的缺点就是,耗费资源。虽然把View的初始可见View.GONE但是在Inflate布转载 2016-02-19 12:58:51 · 561 阅读 · 0 评论 -
为什么自定义ViewGroup ondraw方法不会被调用
转载地址:点击打开链接viewgroup的绘制严格来说是在dispatchDraw中完成,作为一个容器,绘制自己的孩子该通过dispatchDraw(canvas)实现。但是你非要在ondraw中也不会出错。但自定义ViewGroup ondraw方法不会被调用的根本原因是你的ViewGroup中还没有可绘制的内容。下面是详细解释:一,现象转载 2016-02-19 16:19:20 · 664 阅读 · 0 评论 -
Android版本和API Level对应关系
原文地址 http://blog.csdn.net/huiguixian/article/details/39928027Platform VersionAPI LevelVERSION_CODENotesAndroid 4.419KITKATPlatform HighlightsAndroid转载 2016-03-08 15:52:18 · 695 阅读 · 0 评论 -
Android canvas.save()和canvas.restore()的理解
原文地址 http://blog.csdn.net/leoleohan/article/details/50827236Canvas相当于一块画布,该类中常用的方法如下:drawRect(RectF rect, Paint paint)drawPath(Path path, Paint paint)drawBitmap(Bitmap bitmap, Rect src, Rect d转载 2016-03-09 10:24:10 · 799 阅读 · 0 评论 -
[转]Android Binder设计与实现 - 设计篇
地址http://www.cnblogs.com/angeldevil/p/3296381.html摘要Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有管道,system V IPC,socket等IPC手段,却还要倚赖Binder来实现进程间通信,说明Binder具有无可比拟的优势。深入了解Binder并将之与传统IPC做对比有助于我们深入转载 2016-03-10 17:33:35 · 605 阅读 · 0 评论 -
IntentService简介
转载地址:http://blog.csdn.net/hudashi/article/details/7986130英文原文:http://developer.android.com/reference/android/app/IntentService.html参照文章:http://android.tgbus.com/Android/tutorial/201106/355229.转载 2016-03-11 10:47:59 · 564 阅读 · 0 评论 -
android 使用代码实现 RelativeLayout布局 addRule方法
转自 点击打开链接只需把代码copy进入oncreate方法即可运行 Java代码 RelativeLayout rl = new RelativeLayout(this); Button btn1 = new Button(this); btn1.setText("------------------转载 2016-02-26 16:13:56 · 3689 阅读 · 0 评论 -
Android AsyncTask原理以及线程池概念
转自 http://blog.csdn.net/mr_liabill目录(?)[-]线程池概念测试代码AsyncTask源码测试代码情况1情况2情况3情况4线程池概念thread pool一般被用来解决两个问题:当处理大量的同步task的时候,它能够避免thread不断创建销毁的开销。通过使用threa转载 2016-04-26 00:43:05 · 774 阅读 · 0 评论 -
ListView的动态刷新问题——用notifyDataSetChanged没作用
转自 http://blog.csdn.net/wuzhipeng1991/article/details/38820647?utm_source=tuicool&utm_medium=referral也许很多开发的朋友,尤其是Android初学者,在动态刷新ListView时,使用notifyDataSetChanged并没有起到作用。有时会被困扰得很痛苦。其实,在使用notif转载 2016-04-15 16:46:05 · 582 阅读 · 0 评论 -
android开发小技巧
清楚app缓存 adb shell pm clear app包名原创 2016-04-16 15:57:11 · 700 阅读 · 0 评论 -
android悬浮窗口的实现 Windowmanager
原文地址:http://blog.csdn.net/stevenhu_223/article/details/8504058当我们在手机上使用360安全卫士时,手机屏幕上时刻都会出现一个小浮动窗口,点击该浮动窗口可跳转到安全卫士的操作界面,而且该浮动窗口不受其他activity的覆盖影响仍然可见(多米音乐也有相关的和主界面交互的悬浮小窗口)。那么这种不受Activity界面影响的悬浮窗口是转载 2015-09-26 13:16:21 · 914 阅读 · 1 评论 -
Android之Touch事件分发机制
原文地址:http://blog.csdn.net/chenzujie/article/details/13277081直接进入正题,在android开发中,手势触碰是经常使用到的。这两天刚好在看这方面的资料,在这里写篇文章做个小总结。首先必须知道五大布局Layout:LineaLayout,RelativeLayout,FrameLayout,AbsoluteLa转载 2015-09-26 17:55:05 · 644 阅读 · 0 评论 -
仿zaker最新版本引导界面的视图联动效果
简介在jcodecraeer网站看到一篇文章是如何实现如何实现两个ViewPager的联动的文章 http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1031/1884.html 那篇文章的部分片段需要自定义Viewpager但是通过addonpagerchangeListener就可实现 联动ViewPager的意思就是当一个v原创 2015-09-05 12:16:44 · 1603 阅读 · 4 评论 -
Activity生命周期的探究
我想大家都看过类似文章有些使用流程图介绍的无非就是那几个函数 oncreate ->(onrestart)->onstart->onresume->onpause->onstop->ondestory原创 2015-04-04 10:33:07 · 718 阅读 · 0 评论 -
Android中AIDL使用例子
转自http://blog.csdn.net/huanxido/article/details/6373181本文提供了一个关于AIDL使用的简单易懂的例子,分为客户端和服务端两部分,分别为客户端和服务端新建一个eclipse工程,实现了从客户端向服务端发送请求,服务端打印log的功能。 客户端和服务端的源码结构如下:注意,由于客户端和服务端的aidl文件所转载 2015-04-18 19:39:02 · 661 阅读 · 0 评论 -
notification+service+broadcastreceiver实现简单的音乐播放器
notification+service+broadcastreceiver实现简单的音乐播放器原创 2015-04-14 15:26:45 · 2207 阅读 · 0 评论 -
为Eclipse添加Java和Android SDK源代码
1.下载Android SDK源代码(文中最后有提供)2.到Android SDK目录下的android-xx创建sources文件夹,把源代码放入其中(如果用文中的压缩包,需要解压,把内容放到sources中)3.找到项目中的android.jar。 右键 -> Properties -> Java source Attachment -> External Folder -> 选择刚才新建的so原创 2015-04-26 14:48:38 · 611 阅读 · 0 评论 -
Android开发之如何保证Service不被杀掉
做过android开发的人应该都知道应用会在系统资源匮乏的情况下被系统杀死!当后台的应用被系统回收之后,如何重新恢复它呢?网上对此问题有很多的讨论。这里先总结一下网上流传的各种解决方案,看看这些办法是不是真的可行。 1.提高优先级 这个办法对普通应用而言,应该只是降低了应用被杀死的概率,但是如果真的被系统回收了,还是无法让应用自动重新启动!2.让service.onStartCommand返回S转载 2015-04-27 19:29:36 · 1195 阅读 · 0 评论 -
android studio +genymotion安装及配置
android studio +genymotion安装及配置android studio 下载及安装 下载下载地址http://rj.baidu.com/soft/detail/27390.html?aldgenymotion下载及安装 genymotion下载需要在官网注册帐号 选择和virtulbox绑定的下载点击安装成功之后 1.genymotion软件配置 settiing原创 2015-05-09 22:17:15 · 1644 阅读 · 0 评论 -
仿网易云音乐 专辑图片折叠轮播
防网易云音乐 专辑图片折叠轮播先不多说现上一张效果图首先简述一下实现原理1.首先让我们的imageview**动起来** 其实是不断的.invalidate();函数 让他不断的调用ondarw函数 (显然我们不必要不断的调用ondarw函数 只有在我们让他动的时候调用即可 所以我们要声明一个变量记录change记录是否产生动画)2.实现我们的可折叠效果 Matrix的setP原创 2015-05-11 21:58:50 · 7682 阅读 · 2 评论 -
android onTouchEvent()和 onInterceptTouchEvent() ,setTranslationX()
onintercepttouchevent()方法 拦截touchevent方法 假设我们有这么一个布局linnearlayout内有个button 当我们点击button时会先触发父布局的onintercepttouchevent()方法(即linnearlayout的该方法)如果该方法为 返回true表示父布局说我拦截了孩子你就不用执行你的ontouchevent方法了执行我的onto原创 2015-05-05 12:28:45 · 842 阅读 · 0 评论 -
android 仿知乎sildmenu实现
android 仿知乎sildmenu实现先上一张效果图强化后效果图处理viewpager与scroollview滑动冲突slidmenu实现原理 slidmenu的实现思路是模仿张鸿洋大神的方法实现的 1.自定义sildview继承HorizontalScrollView 2.重写ontouchevent,onlayout,onscrollchanged方法 期间要理解on原创 2015-05-05 17:16:57 · 1927 阅读 · 0 评论 -
android 瀑布流 的实现
所谓瀑布流效果,简单说就是宽度相同但是高度不同的一大堆图片,分成几列,然后像水流一样向下排列,并随着用户的上下滑动自动加载更多的图片内容。 语言描述比较抽象,具体效果看下面的截图:其实这个效果在web上应用的还蛮多的,在android上也有一些应用有用到。因为看起来参差不齐,所以比较有新鲜感,不像传统的九宫格那样千篇一律。网络上相关的文章也有几篇,但是整理后发现要么忽略了OOM的处理,要转载 2015-05-18 10:52:05 · 951 阅读 · 0 评论 -
AsyncTask的缺陷
导语:在开发Android应用的过程中,我们需要时刻注意保障应用的稳定性和界面响应性,因为不稳定或者响应速度慢的应用将会给用户带来非常差的交互体验。在越来越讲究用户体验的大环境下,用户也许会因为应用的一次Force Close(简称FC)或者延迟严重的动画效果而卸载你的应用。由于现在的应用大多需要异步连接网络,本系列文章就以构建网络应用为例,从稳定性和响应性两个角度分析多线程网络任务的性能优化方法转载 2015-07-12 13:58:08 · 601 阅读 · 0 评论 -
Matrix理论与应用详解
Matrix学习——基础知识转自:http://www.360doc.com/content/11/1215/11/7635_172396706.shtml以前在线性代数中学习了矩阵,对矩阵的基本运算有一些了解,前段时间在使用GDI+的时候再次学习如何使用矩阵来变化图像,看了之后在这里总结说明。首先大家看看下面这个3 x 3的矩阵,这个矩阵被分割成4部分。为什么分割成4部分,在后面转载 2015-07-26 17:15:02 · 797 阅读 · 0 评论 -
Android Canvas的save(),saveLayer()和restore()浅谈
转自 http://www.bubuko.com/infodetail-507361.html1.在自定义控件当中你onMeasure和onLayout的工作做完成以后就该绘制该控件了,有时候需要自己在控件上添加一些修饰来满足需求复写onDraw(Canvas canvas),其中Canvas就像是一块画布,你自定义控件的样式就是在它上面完成的。Canvas ,Paint等转载 2015-07-26 21:26:50 · 907 阅读 · 0 评论 -
Android中Shape的使用
先上一张效果图Shape的使用大多数都是在需要使用圆角背景时才用到它 下面我们看一下关于shape的xml文件<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" > <solid android:color="#fff原创 2015-07-16 11:22:33 · 640 阅读 · 0 评论 -
仿网易云音乐 专辑图片折叠轮播(新)
在原来的基础上做了改进没有线程 用一个Handler实现 github项目连接地址package com.wyc.foldimageview;import java.util.ArrayList;import java.util.List;import android.content.Context;import android.graphics.Bitmap;import android.原创 2015-07-16 17:42:42 · 3407 阅读 · 0 评论 -
[Android] Service服务详解以及如何使service服务不被杀死
[Android] Service服务详解以及如何使service服务不被杀死 转自http://www.cnblogs.com/rossoneri/p/4530216.html 阅读目录Services 创建“启动的”服务 创建“绑定的”服务 关于怎样让服务不被杀死Services 服务是一个应用程序组件,可以在后台执行长时间运行的操作,不提供用户界面。一个应用程序组件可以启动一个转载 2015-07-21 23:03:26 · 700 阅读 · 0 评论 -
android windows 32位开发工具 eclipse+sdk23+adt23+ndk+genymotion插件
学习ndk开发需要把adt更新到23版本以上但是以前的eclipse无法卸载旧版本的adt22更新总是报错,在网上找了各种解决办法删除plugs目录下的jar包等等多不能解决花费了一下午和他较劲。最终还是放弃了。。。 so 换了一种解决方案重新搭建android 开发环境 1. 从eclipse官网上下载javaee版本的eclipse(android官网没有eclipse 推荐android原创 2015-08-29 10:54:33 · 2469 阅读 · 0 评论 -
Android中使EditText失去焦点,edittext禁止弹出键盘
地址: http://www.cnblogs.com/yejiurui/archive/2013/01/02/2841945.htmlAndroid中使EditText失去焦点,edittext禁止弹出键盘在我们的应用中,有时候一进入一个页面, EditText默认就会自动获取焦点。弹出输入法框,用户体验很不好,那么如何取消这个默认行为呢?ps:这篇文字是一转载 2016-08-12 20:19:40 · 564 阅读 · 0 评论