自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(252)
  • 资源 (10)
  • 收藏
  • 关注

原创 Android:DropPopMenu — 显示位置跟随操作按钮显示的带箭头的弹出菜单

DropPopMenu显示位置跟随操作按钮显示的带箭头的弹出菜单一,介绍本项目是对带箭头的下拉弹出菜单进行了封装,使用简单,同时有如下特点: 1、可以动态修改菜单的背景; 2、弹出位置是依赖于操作按钮的位置显示,处理了按钮在边界位置引起的菜单显示错位问题; 3、菜单宽度以文字的最大长度作为宽度动态计算了; 4、菜单默认弹窗方向是在操作按钮下面

2017-04-28 17:13:24 6428 3

原创 Android:PopWindow — 对Android的底部弹窗、顶部弹窗菜单及自定义界面的使用封装

PopWindow对Android的底部弹窗、顶部弹窗菜单及自定义界面的使用封装。GitHub:https://github.com/HMY314/PopWindow 一、介绍主要是用于在弹窗中显示一些有限的菜单项,也支持添加自定义View,有如下3中弹出方式: 1、底部弹出,主要参考默认风格是参考IOS的UIAlertController,可以添加自定义Vie

2017-04-24 17:12:29 12035 8

原创 Android:CourseTableLayout — 好用的Android自动生成课程表的自定义控件

转载请注明出处:http://blog.csdn.net/hmyang314/article/details/52076392CourseTableLayout一个Android自动生成课程表的自定义控件GitHub:https://github.com/HMY314/CourseTableLayout一、介绍 1、根据传入课程数据,或日期数据

2016-08-02 11:11:01 3157

原创 Android:NineGridLayout — 仿微信朋友圈和QQ空间的九宫格图片展示自定义控件

NineGridLayout一个仿微信朋友圈和QQ空间的九宫格图片展示自定义控件。一、介绍 1、当只有1张图时,可以自己定制图片宽高,也可以使用默认九宫格的宽高; 2、当只有4张图时,以2*2的方式显示; 3、除以上两种情况下,都是按照3列方式显示,但这时有一些细节: a、如果只有9张图,当然是以3*3的方式

2016-05-15 03:51:14 27934 43

转载 SVN trunk(主线) branch(分支) tag(标记) 用法详解和详细操作步骤

[+]使用场景:假如你的项目(这里指的是手机客户端项目)的某个版本(例如1.0版本)已经完成开发、测试并已经上线了,接下来接到新的需求,新需求的开发需要修改多个文件中的代码,当需求已经开始开发一段时间的时候,突然接到用户或测试人员的反馈,项目中有个重大bug需要紧急修复,并且要求bug修复后要立即上线;此时应该怎么修复bug呢?是在当前已经开发新需求的基础上进行修复吗?答案是否

2017-05-25 00:15:33 1348

转载 Android:LeakCanary 中文使用说明

LeakCanary 中文使用说明(原文)10 May 2015LeakCanaryAndroid 和 Java 内存泄露检测。“A small leak will sink a great ship.” - Benjamin Franklin千里之堤, 毁于蚁穴。 -- 《韩非子·喻老》demo

2017-05-16 17:53:14 1132

转载 Android:性能优化之利用LeakCanary检测内存泄漏及解决办法

什么是内存泄漏?有些对象只有有限的生命周期。当它们的任务完成之后,它们将被垃圾回收。如果在对象的生命周期本该结束的时候,这个对象还被一系列的引用,这就会导致内存泄漏。随着泄漏的累积,app将消耗完内存。内存泄漏造成什么影响?它是造成应用程序OOM的主要原因之一。由于android系统为每个应用程序分配的内存有限,当一个应用中产生的内存泄漏比较多时,就难免会导致应用所需要的内存超过这个系

2017-05-16 16:31:23 937

转载 Android:利用 LeakCanary 来检查 Android 内存泄漏

前言你被概率性的 OOM 困扰么?有时候,OOM 像幽灵一样,挥之不去,可真想把它揪出来时,又捉之不着。或许,是时候用 LeakCanary 来诊断一下了。它是一个用来检查 Android 下内存泄漏的开源库,这篇文章主要介绍其用法、架构和其背后的实现原理。Square 有篇文章介绍了开发这个库的原因。他们的一个付款流程里,需要用到用户的签名,他们直接用 Bitmap 来画签名,B

2017-05-16 15:52:01 624

原创 Android:两个Fragment在同一个Framelayout上切换显示

private String[] TAGS = new String[]{"tag1", "tag2"};private void showFragment(Fragment from, Fragment to, int position) { FragmentTransaction transaction = getSupportFragmentManager().b

2016-06-13 10:41:35 4548

原创 Android:ViewPager中获取当前界面的Fragment

在项目中,有时会用到在ViewPager中显示同样类型的Fragment,同时这样的Fragment的个数是动态的,但是PagerAdapter没有给我们提供getCurrentFragment类似的方法。通过查阅资料和看源码,PagerAdapter中有个setPrimaryItem(ViewGroup container, int position, Object object) 方法,我

2016-05-20 16:27:32 22333 1

原创 Error:Execution failed for task ':app:transformClassesWithDexForUmengDebug'.

在Android studio中编译的时候,出现如下问题:Error:Execution failed for task ':app:transformClassesWithDexForDebug'.> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessExce

2016-04-28 15:54:41 1931

原创 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForUmengDebug'. > com.androi

今天用上Android Studio2.0正式版,编译项目后出现如下错误:Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForUmengDebug'. > com.android.build.api.transform.TransformException: com.android.builde

2016-04-26 15:04:16 9407 1

原创 Android:open failed: ENOENT (No such file or directory)—创建文件及目录

今天创建了个多级目录,没注意方法写错了,所以报open failed: ENOENT (No such file or directory) 错误,下面介绍创建一级目录和多级目录:1、只创建一级目录:例如:在SD卡上创建一级目录("/sdcard/images/"):boolean isDirectoryExists(String dir) { File fil

2016-04-08 14:49:05 7478

原创 Android:GPS坐标转高德地图坐标

最近做GPS定位,并且将获得的坐标显示在高德地图上,但是实际效果跟我们期望的是有偏差的。通过查阅资料,才知道有地球坐标、火星坐标之说。一、坐标分类地图坐标大致分为几种:1、GPS、WGS84,也就是原始坐标体系,这是国际公认的世界标准坐标体系;2、GCJ-02,又称为“火星坐标”,国家测绘局在02年发布的坐标体系,在国内,至少得使用此坐标体系,比如:google、高

2016-04-06 10:28:55 9917 3

原创 Android:AsyncTaskUtil 异步简化操作工具类

常常会用到AsyncTask 类来实现异步操作,如果每次都 通过 new AsyncTask 来使用,有时略显麻烦。我这里简单的将其封装为一个简化操作工具:1、AsyncCallBackpublic abstract class AsyncCallBack { public void onPreExecute() { } public abstrac

2016-03-21 17:37:25 1582

原创 Android:BaseListAdapter——摒弃ViewHolder使开发更高效的BaseAdapter

上一篇文章 Android:BaseListAdapter——提高开发效率的BaseAdapter,介绍了使用保留ViewHolder的方式实现BaseAdapter,但是显得有些臃肿,接下来介绍摒弃ViewHolder的方式封装BaseAdapter。1、BaseListAdapter2/** * Created by HMY on 2016/3/2. */public a

2016-03-02 18:25:42 1988

原创 Android:BaseListAdapter——提高开发效率的BaseAdapter

我们在使用ListView的时候,大多数时间都会继承BaseAdapter写适配器,会使用ViewHolder,然而当我们写的多了会发现,我们做了很多重复的体力劳动。接下来,为了提高开发效率、减少重复劳动,我对BaseAdapter进行了封装。1、BaseViewHolder/** * 用于ListView 的ViewHolder * Created by HMY on 201

2016-03-02 15:56:29 2256 4

原创 Android:PowerPopMenu——加强版的PopupWindow菜单

在项目的开发过程中,经常需要弹出PopupWindow样式的菜单,大体上有两种弹出位置:第一种、弹出菜单依附于点击的位置,同时也会分为上下,菜单方向是水平还是竖直,如下图:第二种、无论在屏幕的任何位置点击,都只从最底部弹出,如下图:首先,用于列表显示的控件是RecyclerView,要用android-support-v7-recyc

2016-02-26 15:25:34 3160

原创 Fragment与宿主Activity都调用startActivityForResult,onActivityResult不执行解决办法

在项目中Fragment与宿主Activity都调用startActivityForResult,但是Fragment的onActivityResult并没有执行,解决方法是:在宿主Activity中的onActivityResult方法添加super.onActivityResult(requestCode, resultCode, data);就对了

2016-01-25 15:15:36 1515

原创 Android:BaseRecyclerViewAdapter(RecyclerView 之 BaseAdapter)

RecyclerView已经出来了一段时间了,应该很多开发者也已经使用过,至于更多的关于RecyclerView的百度吧。在使用RecyclerView时,它的adapter是RecyclerView.Adapter,在我开始使用中,每次都会写很多重复的东西,仔细看看,其实也是可以抽出一个BaseAdapter,这样开发更快捷,同时也提供短按和长按接口,代码如下:BaseRecyclerV

2016-01-04 15:49:01 3276 1

原创 Android:Gradle之使用教程总结

下面是总结的其他博主总结的不错的关于Gradle使用教程的链接,便于快速查看:第一个系列:1、Gradle 教程说明 用户指南 1~6章2、Gradle 教程说明 用户指南 第7章 构建Java工程----快速入门3、Gradle 教程说明 用户指南 第8章依赖管理基础4、Gradle 教程说明 用户指南 第9章 Groovy----快速入门5、Gradle 教程说

2015-11-27 15:02:04 1233

原创 Android:完美解决 — 表情键盘与输入法键盘显示冲突方案

在做发帖功能的时候,一般都会用到表情,当在输入法键盘显示的情况下,点击显示表情键盘的按钮,如果只是简单的setVisibility,同时隐藏输入法,这时表情键盘会被往上弹出,这个效果就让使用体验不太友好。我的解决方案是:在输入法键盘完全隐藏后,再将表情键盘显示。1、在xml布局中的最底部加一个View,高度为0,用来在代码中判断该view的y坐标是否大于或等于屏幕的高度,如果是,这

2015-11-26 14:51:00 2960

原创 Android:Fresco体验(一):Android Studio导入Fresco

由于想做个图片渐进显示效果,在网上搜了好久,最终决定用FaceBook的Fresco来试试,因为它的功能比ImageLoader强大多了,以至于觉得必须用一用。1、Fresco在gitHub上的地址:https://github.com/facebook/fresco2、Fresco的中文文档:http://fresco-cn.org/docs/index.html3、Fres

2015-11-25 11:39:19 3548

原创 Android:过滤掉输入法中的表情

过滤输入法中的表情,只需调用第一个方法,传入要禁用的EdiTText。 public static void setProhibitEmoji(EditText et) { InputFilter[] filters = {FuncUtil.getInputFilterProhibitEmoji()}; et.setFilters(filters)

2015-11-23 16:15:54 3074 1

原创 Android:详情界面左右滑动看更多,ViewPager动态添加Fragment,仿51job详情界面

在项目中遇到一个需求:在邮件列表中任意一个进入邮件详情,在详情界面中,可以左右滑动查看上一条或下一条邮件详情。界面简单,主要是实现效果这时我们第一时间想到的就是ViewPager+Fragment,但是我的数据可能会有上百条,这就要考虑Fragment的回收问题,开始自己折腾了很久,后来网上查到了用FragmentStatePagerAdapte

2015-11-11 18:12:04 3819

原创 Android:AutoScrollViewPager放在PullToRefresh中,解决不能下拉刷新问题

AutoScrollViewPager:Android自动滚动,轮播循环的ViewPager。项目开源地址:https://github.com/Trinea/android-auto-scroll-view-pager这个控件很方便的实现图片banner的轮播,的确好用,但是我在项目中将AutoScrollViewPager放在下拉刷新ListView的头部,当在AutoScroll

2015-11-11 14:32:43 1786 1

原创 Android:Java.lang.IllegalStateException Activity has been destroyed

在使用ViewPager中动态添加Fragment A,同时Fragment A中嵌套Fragment时,在不停滑动ViewPager时,会出现"Java.lang.IllegalStateException Activity has been destroyed"的错误,解决办法如下:在Fragment A中添加:@Overridepublic void onDetach() {

2015-11-10 17:38:20 7111

转载 Android:FragmentStatePagerAdapter分页

ViewPagerViewPager 如其名所述,是负责翻页的一个 View。准确说是一个 ViewGroup,包含多个 View 页,在手指横向滑动屏幕时,其负责对 View 进行切换。为了生成这些 View 页,需要提供一个 PagerAdapter 来进行和数据绑定以及生成最终的 View 页。setAdapter()ViewPager 通过 se

2015-11-10 14:36:48 948

转载 Android:常用Utils工具类

Android常用工具类主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java。目前包括(HttpUtils、DownloadManagerPro、ShellUtils、PackageUtils、PreferencesUtils、JSONUtils、FileUtils、ResourceUtils、StringUtils、ParcelUtils、

2015-11-06 15:16:51 7863

原创 android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is yo

在使用自定义的PopupWindow 时,遇到了下面的错误: Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?at android.view.ViewRootImpl.set

2015-10-26 15:45:55 2778

原创 Android:TextView超出部分自动添加省略号

android:ellipsize="end" 在文本后面加省略号更多属性:marquee、middle、start、none

2015-09-17 15:38:50 1255

原创 Android:获取灰色图片

public static final Bitmap getImageViewGreyBitmap(Bitmap bitmap) { int width = bitmap.getWidth(); int height = bitmap.getHeight(); Bitmap greyBitmap = Bitmap.createBitmap(width, height, Bitmap.C

2015-08-11 10:07:43 1510

原创 Android:SlidingMenu+ListView+ViewPager 的滑动冲突

在项目中遇到了SlidingMenu、ListView、ViewPager 一起使用,并且ViewPager 是放在ListView的header中,这种情况下会无法滑动ViewPager,通过在网上的查询,有很多的方式,有的很复杂并且无效。最后我找到了一个很简单的解决方法。好了,我就不多说废话,就一行代码。。。mSlidingMenu.addIgnoredView(viewPager);

2015-06-26 15:33:10 2211 1

转载 Android:网络通信框架Volley简介(Google IO 2013)

Volley主页 https://android.googlesource.com/platform/frameworks/volley http://www.youtube.com/watch?v=yhv8l9F44qo&feature=player_embedded1. 什么是Volley在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于Async

2015-06-12 10:41:05 1099

转载 Android:关于Viewpager中的Fragment 滑动时保存状态的问题

之前遇到了在ViewPager中使用Fragment的情况,结果遇到了一个问题就是当viewPager划过去,再滑动回来后之前的fragment又回到了初始化的状态。所以就研究了一下。网上搜了一下,大部分都是说这个FragmentPagerAdapter和FragmentStatePagerAdapter的。总结下来,主要是FragmentPagerAdapter会将每一个生成的fragment都

2015-06-08 18:23:58 1901

转载 Android:菜单栏Menubar跟随ListView滑动隐藏和显示

使用过Google Play Store应用或者Google+应用的人都知道,其ActionBar能随着ListView的滑动而相应的隐藏或者显示。效果看起来很不错,为此,我笨拙的模仿了一个类似的效果,不知道有没有更好的办法。先上主布局activity_main:[html] view plaincopyRelativeLayout xmln

2015-06-08 17:23:08 2227

转载 Android:TextView不获取焦点可以实现跑马灯的效果

之前在网上找了很多关于TextView的跑马灯效果实现的例子,实现起来都存在一些问题,例如一种是完全重画一个跑马灯,还有就是只设置TextView的相关属性使其具有跑马灯的效果,总的来说这两种方法都是可行的,但是都有其不足之处,第一种太复杂,实现起来比较麻烦,第二种呢,它只能在TextView获得焦点的时候才有跑马灯的效果,这样有时候并不能达到我们所要求的效果。我通过网上的一些例子自己在做了一些改

2015-06-01 14:01:47 1232

转载 Android:ListView中嵌入GridView,处理点击事件的冲突

【问题】当GridView嵌入ListView后,始终响应的是GridView的点击事件,我需要的是获取到ListView的点击事件!  在使用ListView的时候,我们使用adapter中画我们自定义item项时,一般会加上Button事件,或者Imagebutton,但是效果却不是我们想象的那么简单,因为你会发现ListView的itemclick事件就不生效了,原因很简单Button的

2015-05-13 15:51:25 3738

转载 Android:使用AIDL来进行跨进程通信

绑定服务调用服务里方法的过程音乐盒小案例利用服务注册特殊广播接收者使用AIDL来进行跨进程通信绑定服务调用服务里方法的过程整个Activty绑定Service并调用其中方法的过程可以体现为下面的一张图,其中的核心是通过借助中间人IBinder来达到调用Service中方法的目的。。接下来在明确一下调用过程的代码步骤:①首先服务里有一个方法

2015-03-16 10:26:26 966

转载 Android:高仿QQ头像截取升级版

观看此篇文章前,请先阅读上篇文章:高仿QQ头像截取;本篇之所以为升级版,是在截取头像界面添加了与qq类似的阴影层(裁剪区域以外的部分),且看效果图: 为了适应大家不同需求,这次打了两个包,及上图中一个方形的头像截取demo和一个圆形的;原理:方形:如图:底层即图片层,在上层的画布中,先将裁剪区四周根据裁剪区大小画上阴影,然后在画上裁剪区的白色边框(空心):如下图

2015-03-04 10:29:28 1871

Android:PowerPopMenu——加强版的PopupWindow菜单

PowerPopMenu——加强版的PopupWindow菜单, CSDN博客:http://blog.csdn.net/hmyang314/article/details/50718455

2016-02-26

android-support-v7-recyclerview.jar

android-support-v7-recyclerview.jar

2016-02-23

Android:从网络获取数据ViewPager动态添加Fragment,仿51job详情左右滑动看更多效果

仿51job详情左右滑动看更多效果,从列表进入详情,在详情界面左右滑动查看上一条或下一条详情。从网络获取数据ViewPager动态添加Fragment

2015-11-11

二维码扫描开源框架zxing.jar

二维码扫描google的开源框架Zxing

2014-11-30

视频音频播放器APP

1)获取本地视频,功能有播放、暂停、快进、调节亮度、调节音量,隐藏进度条; 2)获取本地音乐,功能有播放、暂停、快进、上一曲、下一曲、循环播放、顺序播放、随机播放、单曲循环。 3)其中视频播放器和音乐进度条都为自定义控件。

2014-11-06

天气预报APP

从中国天气网接口获取全国各地区市、县的天气、图片、温度、风向、时间、穿衣建议、感冒指数等信息,并通过解析JSON数据,同时用自定义的横向ListView显示6天天气预报。抽屉导航栏中添加、删除、选择关注的城市。还可以在桌面小控件上显示当天天气信息。

2014-11-06

android-support-v4.jar

android-support-v4.jar

2014-08-16

数据结构计算器(工程包)

主要利用栈实现表达式求值,求阶乘,求平方,进制转换等功能。功能与界面模拟WINDOWS计算器,可支持鼠标。

2013-03-19

通讯录系统

通讯录系统,用于存储用户名及电话号码、地址。对这些信息的插入、删除、修改等操作。

2012-11-05

商品管理小系统

此文件夹包括程序源代码和应用程序,程序功能:创建商品档案、编辑商品信息、统计销售情况、查询商品信息、显示商品信息、退出系统等功能。

2012-06-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除