自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (3)
  • 收藏
  • 关注

原创 访问控制

访问控制(或隐藏具体实现)与“最初的实现不恰当”有关。-Java编程思想 在软件开发过程中,我们经常会发现以前实现的某段代码还有更好的方式或是更快的算法,这时我们需要对代码进行重构。如果代码封装得很好的话,那我们只需要修改实现的部分就好了,其他调用了这段代码的地方根本不需要进行修改。相反,如果我们写的类暴露了过多的实现细节或是接口定义得不合理,那就很难进行代码重构了(我们需要保证客户代码不会因为这

2016-04-22 20:19:36 830

原创 Android给一组控件设置StateListDrawable

今天在弄一个小东西的时候用到StateListDrawable,结果遇到一点问题。现在简单总结一下。 问题是这样的,在前面写SegmentView的时候,给里面的各个Item添加背景,想着中间的几个Item(中间的Item都没有圆角)的背景都是一样的,那就用一个StateListDrawable对象就够了吧。结果就出问题了,如果中间有2个或更多的Item,当点击它们的时候背景就乱了,和想象的结果完

2016-04-05 20:35:21 1800

原创 Android SegmentView

Android Segment在IOS开发中有一个很好用的控件SegmentControl,而在Android要实现相同的功能就需要自己手动完成,如果能有一个已经封装好了的功能类似的控件就好了,基于这个想法,自己实现了一个Android版的SegmentView。 代码比较简单,就是在一个LinearLayout下动态的生成各个Segment Item,通过RoundRectShape画好圆角矩阵

2016-04-05 16:38:30 1441

原创 Java基本数据类型

对Java是否是一门纯面向对象编程语言一直以来都存在争议,因为在Java中还存在像基本数据类型、静态变量、静态方法这样的非面向对象特性。 在Java中一切皆是对象,除了基本数据类型。之所以这样设计,主要是为了提高效率(对像基本数据类型这样简单而又经常使用的变量创建变量会比较低效),所以Java对基本数据类型采用了C、C++相同的方式来处理,就是变量直接存储“值”,而不是对象引用。 在Java中有

2016-04-04 17:14:27 358

原创 资源清理

Java是一门纯面向对象编程语言(如果不考虑基本数据类型的话)。在Java中所有对象都通过new操作符创建,都在堆上分配内存空间。在堆上分配内存空间可以带来很大的灵活性(我们可以在运行时决定我们所需要的内存空间大小)。 不过在带来灵活性的同时,也会带给我们一些麻烦,首先在堆上分配内存不像在栈上那样进行简单的指针运算就可以了(在栈上分配和释放内存只需要操作栈顶指针就可以了,所以它非常高效),它需要申

2016-04-03 19:06:02 515

原创 Java初始化

Java初始化Java保证变量在使用前都已经初始化。 对类的成员变量(静态变量和实例变量),在构建类的实例时,首先都会被初始化为一个默认值(数字型变量(int、byte、short、long、float、double)都会被初始化为0,而boolean则是false,char其ascii码也是0,其他非基本类型的变量则会被初始化为null),当然你也可以在定义变量时直接初始化,然后才是由初始化块和

2016-04-03 18:21:23 418

原创 Android OOM分析总结

在Android开发过程中,你曾经是否遇到java.lang.outofmemoryerror异常。面对OOM问题我们应当如何处理,下面作一简单总结。 OOM原因引用没有及时释放资源对象没有关闭频繁申请不必要的内存native层的内存没有手动释放大对象加载

2016-04-02 13:53:41 245

原创 android获取状态栏高度

public int getStatusBarHeight(Context context) {int height = 0;int resourceId = context.getResources().getIdentifier("status_bar_height","dimen","android");if (resourceId > 0) { height = context.g

2014-11-15 16:16:20 365

原创 android如何判断当前页是否全屏

public boolean isFullScreen(Activity activity) {return (activity.getWindow().getAttributes().flags &WindowManager.LayoutParams.FLAG_FULLSCREEN)==WindowManager.LayoutParams.FLAG_FULLSCREEN;}

2014-11-15 16:11:23 3239

原创 SlidingPanelLayout与ViewPager滑动冲突的解决方法

SlidingPanelLayout是Google在support v4包中新加的用于

2014-11-10 23:23:32 1552

原创 如何禁止被杀掉的service重启

最近做项目的时候遇到一个问题,在项目中有一个播放yi

2014-11-09 13:58:41 810

转载 Android 各版本新增功能

Android3.0新增功能:主要增加全息主题  1、Fragments:较activity粒度小的拥有独自生命周期的模块。可作为acitivity的一部分,activity通过FragmentManager管理独自的fragments back stack。  2、Action Bar:activity顶部标题栏的替代品,通常含logo,点击出现原menu

2014-05-25 22:44:32 477

转载 android actionbar 不能显示overflow

请参看 点击打开链接

2014-05-25 22:22:20 360

原创 android parentactivity

android从4.1开始支持activity向上跳转到自己的逻辑父activity

2014-05-25 21:52:00 4606

原创 android添加lib project

在android工程里添加对lib project的引用时,需要注意被引用的工程应该和

2014-05-25 16:49:09 619

从application启动activity

从application启动activity

2015-12-10

android音频解码Libmad.so

android音频解码库libmad,不过需要用android的NDK开发环境和了解JNI接口编写才能重新封装需要的接口!

2015-06-20

SlidingPanelLayout与ViewPager的滑动冲突

SlidingPanelLayout,ViewPager,滑动冲突

2014-11-10

空空如也

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

TA关注的人

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